专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
PIC单片机
PIC16F1824有什么C编译器能用?
2020-02-06 09:56
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
51单片机
12684
64
64
本帖最后由 1125526801 于 2013-6-15 09:24 编辑
PIC16F1824有什么C编译器能用?之前学习板上的单片机不一样是18F4520,用的MCC18。PIC16F1824是用PICC吗?
360截图20130615092316974.jpg
(177.04 KB, 下载次数: 0)
下载附件
2013-6-15 09:23 上传
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
64条回答
1125526801
2020-02-09 19:50
本帖最后由 1125526801 于 2013-6-20 18:52 编辑
#include<pic.h>
__CONFIG(FOSC_INTOSC & WDTE_OFF & PWRTE_ON & MCLRE_OFF & CP_OFF & CPD_OFF & BOREN_ON & CLKOUTEN_OFF & IESO_ON & FCMEN_OFF);
__CONFIG(WRT_OFF & PLLEN_OFF & STVREN_ON & BORV_LO & LVP_OFF);//将FOSC<2:0>:振荡器选择位设置成 INTOSC,
void init_fosc(void)
{
OSCCON = 0x70;//8MHZ IRCF<3:0>时钟频率选择位设置成8MHZ
}
void delay500ms(void) //误差 0us
{
unsigned char a,b,c;
for(c=20;c>0;c--)
for(b=152;b>0;b--)
for(a=7;a>0;a--);
}
//---------------------------------------
//名称: 主函数
//-----------------------------------------
void main()
{
init_fosc();
TRISA=0B00000000; //RA设置为输出
TRISC=0B00000000; //RC设置为输出
PORTA=0B00000000; //初始化RA
PORTC=0B00000000; //初始化RC
while(1)
{
RC2=1;
delay500ms();
RC1=1;
delay500ms();
}
}
复制代码
又出状况了。按理接在RC1和RC2的两个LED,应该是常亮的,可是实际他是交替闪。RC1=1时,RC2会自动变为0,什么情况???
一个IO置1,会让同一组的其它自动置0? 试了下一如 RC2=1; RA1=1;, 则不会互相影响。
加载中...
查看其它64个回答
一周热门
更多
>
相关问题
PIC单片机不同的IO口驱动74HC573驱动共阴极的数码管,有的段不亮
1 个回答
一种简单精确的pic延时方法
21 个回答
谁熟悉PIC的产品发布时间的,帮看看PIC18F47K40啥版本IDE能开发
12 个回答
求AN1078对应的源代码下载地址
5 个回答
PIC单片机应用技巧
4 个回答
相关文章
一种用PIC单片机主时钟驱动的老式挂钟
0个评论
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
PIC单片机
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
- #include<pic.h>
- __CONFIG(FOSC_INTOSC & WDTE_OFF & PWRTE_ON & MCLRE_OFF & CP_OFF & CPD_OFF & BOREN_ON & CLKOUTEN_OFF & IESO_ON & FCMEN_OFF);
- __CONFIG(WRT_OFF & PLLEN_OFF & STVREN_ON & BORV_LO & LVP_OFF);//将FOSC<2:0>:振荡器选择位设置成 INTOSC,
- void init_fosc(void)
- {
- OSCCON = 0x70;//8MHZ IRCF<3:0>时钟频率选择位设置成8MHZ
- }
- void delay500ms(void) //误差 0us
- {
- unsigned char a,b,c;
- for(c=20;c>0;c--)
- for(b=152;b>0;b--)
- for(a=7;a>0;a--);
- }
- //---------------------------------------
- //名称: 主函数
- //-----------------------------------------
- void main()
- {
- init_fosc();
-
- TRISA=0B00000000; //RA设置为输出
- TRISC=0B00000000; //RC设置为输出
- PORTA=0B00000000; //初始化RA
- PORTC=0B00000000; //初始化RC
-
- while(1)
- {
- RC2=1;
- delay500ms();
- RC1=1;
- delay500ms();
- }
- }
复制代码又出状况了。按理接在RC1和RC2的两个LED,应该是常亮的,可是实际他是交替闪。RC1=1时,RC2会自动变为0,什么情况???一个IO置1,会让同一组的其它自动置0? 试了下一如 RC2=1; RA1=1;, 则不会互相影响。
一周热门 更多>