本帖最后由 pzsh 于 2021-8-31 17:49 编辑  
 
出差在外地收到的电话,被告知抽上开发板赠送了,感激涕零。 
 
到家就收到了小包裹,盒子非常袖珍,一度很怀疑这么小的盒子能装下开发板吗? 
 
 
 
 
打开盒子后,呈现在面前的开发板本体的确小巧玲珑 
摆在电脑键盘对比一下就知道了,只有这么大。 
 
 
开发板的细节: 
 
 
 
OK,下载开发板的硬件框图,这里面的管脚、端口信息,后面设置里都用得到。 
 
 
 
今天先建立开发环境、点亮这块开发板,并和宿主电脑串口通讯一下。 
也算日后的开发和debug的平台 
 
—————————————————————————————————————————— 
先安装MPLAB X IDE吧 
 
MPLAB X IDE开发环境的安装 
下载链接: 
https://www.microchip.com/en-us/development-tools-tools-and-software/mplab-x-ide 
MPLAB X IDE Windows v5.50 
 
安装时选中文(默认是English) 
 
 
安装到最后,有些Microchip提供的驱动程序被安装时,要选择同意。 
 
—————————————————————————————————————————— 
然后安装XC8 编译器 
 
XC8 编译器的安装 
下载链接: 
https://www.microchip.com/en-us/development-tools-tools-and-software/mplab-xc-compilers#Downloads 
MPLAB XC8 Compiler v2.32 
 
License授权选择Free即可 
Add xc8 to the PATH environment variable 要勾选 
 
安装到最后会看到Host ID,这是你这台电脑上允许运行XC8 Free版的标志,继续即可完成安装 
 
—————————————————————————————————————————— 
MCC的安装 
 
启动第一步安装好的MPLAB X IDE 
 
 
没有建立任何Project之前,用好一些的USB线连接收到的PIC18F16Q41 Curiosity Nano到PC的USB口 
Kit Window窗口被自动打开,PIC 18F16Q41 Curiosity Nano页面自动打开 
 
 
step1 
File菜单选择New Project,选独立项目,Next 
 
 
 
step2 
系列:Advanced 8-bit MCUs(PIC 18) 
器件:PIC18F16Q41 
器件:PIC18F16Q41 Curiosity Nano-SN...... 
 
 
 
step3 
选择xc8 v2.32--> Next 
 
 
 
step4 
项目名称:Test1 
项目位置:最好给它建个自己定义的目录,我是D盘PIC下按照单片机型号分的 
项目文件夹:同上(勾选了“使用项目位置作为项目文件夹”) 
 
 
 
step5 
Tools菜单选择plugin,弹出的Plugins窗口勾选MPLAB Code Configurator,点击下方的Install 
安装MCC 4.2.4(都用默认选项即可) 
最后安装结束时要Restart Now重启MPLAB X IDE来载入MCC 
 
重新打开的MPLAB X IDE就有蓝色六边形MCC标志了,安装部分完毕 
点击打开MCC 
—————————————————————————————————————————— 
下面进入MCC设置 
 
MCC Step1 
最下方窗口Pin Manager窗口先选择我们这块开发板上PIC18F16Q41芯片的封装,从默认的QFN20改为SSOP20 
右上角PinManager: Package View的布局也随之改变。 
 
 
 
 
MCC Step2 
我们现在System Module的tag里设置系统时钟,HFINTOSC是内置时钟,要使用外置时钟需要自己焊、然后再设置。 
钟频我设置了64MHz 
接下来设置I/O端口:根据开发板硬件资料,RC0为SW0,RC1为LED0 
 
 
 
 
 
MCC Step3 
System Module的tag处理完毕,我们点击Available Resources的tag 
这里是这块单片机可以选用的资源模组 
 
我们在第一个测试中,选择DELAY模组(延时函数需要)、UART、UART1模组(串口通信需要),各自点击前面的绿色加号添加 
 
 
 
 
 
MCC Step4 
当我们进行UART添加时,要点击空白框的左下角+号来添加外部设备UART1(默认)到表中,默认的串口通讯速率9600不变。 
另外下面的下拉选项、我们把默认的None改为“Basic Read/Write with Printf support”,以支持printf函数 
 
 
 
 
MCC Step5 
双击外部设备Peripherals的UART1,打开UART1的设置 
按图所示勾选Redirect STDIO to UART,这个允许编程中使用printf函数,将信息发送给串口 
Pin Manager里设置UART1的TX1和RX1(单片机一侧,串口的发送端口和接收端口) 
根据开发板的硬件资料,TX1为RB7、RX1为RB5 
 
 
 
 
MCC Step 6 
点击IDE画面左侧MCC的Resource Management中,Tree View下Project Resources的Generate 
让MCC生成驱动这些资源所需要的代码。 
 
 
 
 
MCC 自动设置和代码生成,到此告一段落 
———————————————————————————————————————————— 
接下来我们开始给单片机写程序 
 
编程Step 1 
点击IDE画面左侧Projects的Tag,展开Test1下源文件,双击main.c 
在右上角的main.c编程窗口中找到最下方这里开始编程。 
 
 
 
编程Step 2 
程序就这么简单几行 
首先我们解除全局中断允许函数前面的注释符,让其工作起来 
 
接下来我们每隔一秒(1000毫秒)让LED切换一次开关 
 
同时读取LED的锁存器,根据ON/OFF状态来向串口发送相应字符。 
 
 
程序写好了,接下来就是如图所示点击榔头符号进行编译 
 
右下方的Output窗口里有编译是否完成的结果。 
 
 
编程Step 3 
 
编译没问题的话,就写入开发板吧! 
写入开发板的结果也会显示在右下方的Output窗口 
 
 
 
 
 
编程Step 4 
 
我们看到LED灯正常的一秒一亮灭、在串口调试助手界面里也可以看到LED ON/OFF随之切换。 
测试完成。 
 
 |