找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

請教有關M487 GPIO輸出問題

[复制链接]
跳转到指定楼层
楼主
各位前辈 大家好我使用新唐的范例「GPIO_OutputInput」 设定 D10为GPIO_MODE_OUTPUT,并设定     PD10 = 1;

使用电表量后发现没有输出,如下图

请前辈前们指教

我之前只有学习过Arduino





在下先谢谢各位

00007.png (1.46 MB, 下载次数: 346)

00007.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具 举报

5#
 楼主| adolclistin 发表于 2019-4-21 15:05:23 | 只看该作者
感谢jamesliu回覆

我找到说明文件了,在板子上的标注是使用Arduino的脚位,真正的位置要从文件里找。

谢谢!
回复 支持 反对

使用道具 举报

地板
jamesliu 发表于 2019-4-18 12:43:45 | 只看该作者
D10对应的是PA2这个pin,D10是Arduino的引脚不是芯片的引脚
回复 支持 反对

使用道具 举报

板凳
 楼主| adolclistin 发表于 2019-4-17 10:18:48 | 只看该作者
先感谢jamesliu回覆

我直接使用新唐的范例「GPIO_OutputInput」如下

//---------------------------------------


#include "stdio.h"
#include "NuMicro.h"


#define PLL_CLOCK       192000000


void SYS_Init(void)
{

    /* Set XT1_OUT(PF.2) and XT1_IN(PF.3) to input mode */
    PF->MODE &= ~(GPIO_MODE_MODE2_Msk | GPIO_MODE_MODE3_Msk);

    /* Enable HXT clock (external XTAL 12MHz) */
    CLK_EnableXtalRC(CLK_PWRCTL_HXTEN_Msk);

    /* Wait for HXT clock ready */
    CLK_WaitClockReady(CLK_STATUS_HXTSTB_Msk);

    /* Set core clock as PLL_CLOCK from PLL */
    CLK_SetCoreClock(PLL_CLOCK);

    /* Set PCLK0/PCLK1 to HCLK/2 */
    CLK->PCLKDIV = (CLK_PCLKDIV_PCLK0DIV2 | CLK_PCLKDIV_PCLK1DIV2);

    /* Enable UART module clock */
    CLK_EnableModuleClock(UART0_MODULE);

    /* Select UART module clock source as HXT and UART module clock divider as 1 */
    CLK_SetModuleClock(UART0_MODULE, CLK_CLKSEL1_UART0SEL_HXT, CLK_CLKDIV0_UART0(1));

    /* Set GPB multi-function pins for UART0 RXD and TXD */
    SYS->GPB_MFPH &= ~(SYS_GPB_MFPH_PB12MFP_Msk | SYS_GPB_MFPH_PB13MFP_Msk);
    SYS->GPB_MFPH |= (SYS_GPB_MFPH_PB12MFP_UART0_RXD | SYS_GPB_MFPH_PB13MFP_UART0_TXD);

}

void UART0_Init()
{
    /* Configure UART0 and set UART0 baud rate */
    UART_Open(UART0, 115200);
}

int32_t main(void)
{
      // Unlock protected registers //
    SYS_UnlockReg();

    // Init System, peripheral clock and multi-function I/O //
    SYS_Init();

    // Lock protected registers //
    SYS_LockReg();

    // Init UART0 for printf //
    UART0_Init();

        GPIO_SetMode(PD, BIT10, GPIO_MODE_OUTPUT);
        PD10 = 1;
       
        while(1){

        }
}
//-----------------------------------------------------------------------
回复 支持 反对

使用道具 举报

沙发
jamesliu 发表于 2019-4-17 09:22:19 | 只看该作者
麻烦贴出你的code
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU