首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PIC18f4550,20 led晶振,48 led闪烁led

PIC18f4550,20 led晶振,48 led闪烁led
EN

Stack Overflow用户
提问于 2017-03-25 01:44:20
回答 1查看 799关注 0票数 0

我有一个闪烁的代码,问题是我是否正确配置了保险丝,因为当delay_ms为1000时,LED闪烁47秒,关闭47秒。我使用的是CCS C编译器5.059。谢谢你的建议。

代码语言:javascript
运行
复制
#include <18F4550.h> 
#include<stdlib.h>
#include<math.h>
#fuses PLL5,HSPLL,CPUDIV2,USBDIV,NOWDT,NOPROTECT,NOLVP, VREGEN
#use delay(clock=48000000,crystal=20MHz) 
//========================== 
void main() 
{ 
  while(TRUE) 
  { 
   output_high(PIN_D0); 
   delay_ms(1000); 
   output_low(PIN_D0); 
   delay_ms(1000); 
  } 
}
EN

回答 1

Stack Overflow用户

发布于 2018-03-18 09:27:17

CCS编译器将根据您传递给#use delay()的参数设置适当的振荡器熔丝。它还对#use delay()的参数执行健全性检查,以验证它是否兼容。将您的#fuses#use delay()更改为以下内容,让CCS C编译器为您正确执行此操作:

代码语言:javascript
运行
复制
#fuses NOWDT, NOPROTECT, NOLVP, VREGEN
#use delay(clock=48MHz ,crystal=20MHz, USB_FULL)

我还在#use delay()中设置了USB_FULL参数,该参数还配置了#use delay()的其他部分以实现全速USB操作(这似乎是您想要使用的)。

您会注意到,我从代码中删除了PLL5、HSPLL、CPUDIV2和USBDIV熔丝,因为这些熔丝将由#use delay()设置

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43005959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档