[PIC®/AVR®/dsPIC®产品] 【CuriosityNano测评报告】+初次上手PIC单片机之PWM呼吸灯

[复制链接]
1892|3
 楼主| 南来之风 发表于 2020-12-31 18:11 | 显示全部楼层 |阅读模式
本帖最后由 南来之风 于 2020-12-31 23:19 编辑

非常感谢论坛提供了一次难得的初次体验PIC单片机的机会。官网的资料是非常详细的,对于这款Curiosity Nano,建议从Github上开始学起来。
https://github.com/microchip-pic-avr-examples/pic16f15244-pwm-led-blink
首先是环境的搭建:


正确安装好驱动后,在端口中应该可以看到“Curiosity Virtual COM Port”


开发环境安装好后,首先打开MPLAB XIDE5.40,软件是自动识别我们这款板子,而且硬件资料,软件demo一应俱全,非常的便利!


转到Git上,试着运行一个pwm-led-blink-master的项目,下载后先build一个工程

成功后,把程序下载到板子上。

与此同时,把GND和RA2引脚引出,连接到一个简易示波器的输入端,可以看到PWM的方波驱动LED闪烁,在简易示波器上显示出响应的波形。
在例程的基础上,增加了几个不同占空比的值,目前占空比可以选择0,12,25,37,50,62,75,88,100
代码比较糙,但还是贴出来了
  1. uint16_t Array_dutyCycle[] =
  2. {0x0000,0x007F,0x00FA,0x177,0x01F4, 0x0271,0x02EE,0x036A,0x03E7};

  3. uint16_t i;
  4. uint8_t index = 0;
  5. int8_t direction = 1;

  6. void main(void)
  7. {
  8.     SYSTEM_Initialize();                                                        // Initialize the device   
  9.     INTERRUPT_GlobalInterruptEnable();                                          // Enable the Global Interrupts
  10.     INTERRUPT_PeripheralInterruptEnable();                                      // Enable the Peripheral Interrupts
  11.    
  12.     while(1){
  13.         if(direction == 1){
  14.             if(index != 8)
  15.                 PWM3_LoadDutyValue(Array_dutyCycle[++index]);  
  16.             else{
  17.                 direction = -1;
  18.                 PWM3_LoadDutyValue(Array_dutyCycle[--index]);
  19.             }
  20.         }
  21.         else{
  22.             if(index != 0)
  23.                 PWM3_LoadDutyValue(Array_dutyCycle[--index]);
  24.             else{
  25.                 direction = 1;
  26.                 PWM3_LoadDutyValue(Array_dutyCycle[++index]);
  27.             }
  28.         }
  29.         for(i = 5120; i!=0;i--);
  30.     }
  31. }
最终的效果如下:

可以看出PWM的波形占空比变化时候LED0的亮度也随之变化。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
MianQi 发表于 2020-12-31 18:38 | 显示全部楼层
能把示波器的刷新频率降下来吗?
jinglixixi 发表于 2021-1-3 09:36 | 显示全部楼层
简易示波器不错,是自己做的,还是买的?
 楼主| 南来之风 发表于 2021-1-4 09:57 | 显示全部楼层
本帖最后由 南来之风 于 2021-1-4 09:59 编辑
jinglixixi 发表于 2021-1-3 09:36
简易示波器不错,是自己做的,还是买的?

这个是开源的一个作品,自己也在学习中
您需要登录后才可以回帖 登录 | 注册

本版积分规则

69

主题

293

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部