永发信息网

PIC16F690单片机程序问题

答案:2  悬赏:10  手机版
解决时间 2021-02-18 21:12
写了一个最简单的端口翻转程序,结果端口没有翻转,用外部12M晶振 ,麻烦谁用过这个单片机的看一下。

#include
#include "..\Main\VAS6685.h"
//__CONFIG (WDTE_OFF&FOSC_INTRCIO &PWRTE_ON & MCLRE_ON &BOREN_ON &FCMEN_ON );//
__CONFIG(0x3FF2);//外部
#define _XTAL_FREQ 12000000 // 12M晶振数值
// __CONFIG(0x31b4);
//看门狗关;内部RC振荡,RA4/RA5做I/O,MCLR脚做复位

void IO_inti(void);

void IO_inti()
{
TRISC=0x00;//PORTC输出
RC4=0;
}
void main()
{
int t=0;
// OSCCON = 0x77;//8M内部时钟
IO_inti();
while(1)
{
RC4=1;
RC4=0;
}
}
最佳答案



1. 首先你所要控制的PORT要设为output。TRISC=0x00;//PORTC输出。你这个寄存器如果其效果就没有问题

2. while(1)
{
RC4=!RC4;
//delay();  加个几百毫秒的延时才能看出效果
}
或者
while(1)
{
RC4=1;
//delay();  加个几百毫秒的延时才能看出效果
RC4=0;
//delay();  加个几百毫秒的延时才能看出效果
}
全部回答
我试着写一下啦,但是我电脑没有装mplab软件, 没有编译,不过你可以拿回去试试,可以参考思路 程序其实很简单 #include //用的是picc编译器 __config (hs & protect & pwrten & boren & wdtdis); //pic单片机都需要配置该位,hs是外部晶振模式 // 使能protect保护程序存储器 //boren使能掉电保护 //wdtdis关闭看门狗 void display(int pulse_amount); void main(void) { int pulse_amount //定义变量,存储外部脉冲数 scs=0; //时钟源的选择。 tmr0=0; //清零计数器 option_reg=0x20; //定义计数模式,对单片机的tock1引脚的脉冲 //计数,每来一个脉冲,tmr0就会加1,设置好之后计数器就开始工作了 while(1) //这个循环就是不断读取计数值 { pulse_amount=tmr0; display(pulse_amount); //这个程序是我假设的,就是用来显示计数值 } } 程序的局限性在于,因为定时器0是8位的,也就是对外部引脚脉冲计数的最大值 是256 当计数值达到这个值后,计数器的值会自动清零,这时候你可以设置一个中断 程序来计数。我这里不多讲了。 外部脉冲频率是由晶振决定的,定时器在计数模式下,计数初值和计数值跟那两个没有任何关系
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
藏青与兰色有什么区别
博士坑怎么去啊,有知道地址的么
ILCE-7索尼微单如何对焦?
金弘商务酒店地址在什么地方,想过去办事
干粉灭火器的规格是()。
湛江到广州车票多少钱?
怎么提取指定文件夹下的文件名和属性
起亚k2出现发动机故障吗,故障吗不闪烁,非常
腾达和迅捷路由器哪个好
QQ杀手怎样下载
徐岚皮艺坊(绿宝广场)在什么地方啊,我要过去
在动物界中,只有哺乳动物是恒温动物
玉碎了什么样?是不是粉末状?
女生鼻梁有痣
多彩窗帘布艺怎么去啊,有知道地址的么
推荐资讯
家里的花瓶坏了,能修好吗?
我在余姚裘皮城三期做外墙石材干挂,到现在工
小拇指汽修打蜡多久打一次?
给单身,情侣取创意群名
发货美国洛杉矶fba,走哪些渠道比较好?
经棉里东区(西北门)地址有知道的么?有点事想
手机卡注销,剩余的话费怎么办
小孩玩王者荣耀充30元钱是干嘛
武当特产超市在什么地方啊,我要过去处理事情
求女主女扮男装是纨绔和女主是神偷的小说
雁塔油漆大全我想知道这个在什么地方
一般情况下,借款人的还款来源包括()。A.现金
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?