我使用的单片机型号是PIC18F46K22的,以前使用的时候,是直接使用的16M外部频率,没有倍频;但是后来,由于项目的需要,需要更高频率才能处理,于是我打开了4倍频的配置;但是最后发现出现了这些问题:
操作IO口的时候,不能连续两个IO口操作,如下:
PORTBbits.RB3 = 1; //设置的输出
PORTBbits.RB4 = 1;
如果是上面连续赋值高电平,或者低等等,第一个会没有作用,只有最后一个有效果;但是如果中间加了一个延时语句,如下:
PORTBbits.RB3 = 1; //设置的输出
Delay(); //延时几个ns,或者1us
PORTBbits.RB4 = 1;
加了延时语句后,就正常了;我看电气特性,和芯片介绍也没有说这个问题,哪位可以解释一下,或者告诉一下资料的解释的地方也可以;
最后,就是除了上面的问题,倍频后,程序方面哪些还需要考虑的(什么定时器设置,这个我已经考虑了),硬件上需要哪些考虑??
|