大侠们,我的T1CNT在CCS环境里不能自动记数,可我的使能位都设置过了,初始事件管理器的程序如下:
void init_EV(void)
{
EvaRegs.T1CNT=0; // 计数初值为0
EvaRegs.T1CMPR=0x3fff; //设置比较器初值
EvaRegs.T1PR=0x7fff; //设置周期
EvaRegs.COMCONA.all=0xA6E0;//比较控制寄存器A
EvaRegs.T1CON.all=0x1746; //定时器1的控制寄存器
EvaRegs.GPTCONA.all=0x017A; //定时器1、2的控制寄存器,通过设定其中的T1TOADC使定时器1周期中断启动AD;
EvaRegs.EVAIMRA.all=0x0681; //EVA中断屏蔽寄存器
EvaRegs.T2CON.all=0x1746; //定时器2的控制寄存器
EvaRegs.T2CNT=0; // 计数初值为0
EvaRegs.T2CMPR=0x3fff; //设置比较器初值
EvaRegs.T2PR=0x7fff; //设置周期
EvaRegs.EVAIMRA.all=0x0080; //使能TIPINT中断
EvaRegs.EVAIFRA.all=0x0; //清除中断标志
}
这些寄存器都在头文件里定义过,已通过编译
我实在不明白,紧急求救啊,万分感谢~!!
程序是否能行运行,是仿真
谢谢楼上大侠回复啊,我是用的C,初值都写进去了
弱弱的问一句,CCS环境里不是有软仿真功能么,是不是必须得加电路板才能看得到计数器工作没有啊?
是的,软仿真只能做一些计算功能,对于需要定时、计数的涉及时间的功能不起作用。
可以用spi和另一个单片机通讯,也可以用spi外扩一个232或者是485或者是422,外扩的很好用
是用的专门芯片啊,通讯效果很好,我用的波特率最高到115200
我也存在这个问题,我看了资料上好像不能啊,只有C才可以
不是用CALL _NAME就行了吗?
我只在汇编中调用过汇编所编写的函数,可以使用.call _name,但是不知道能不能调用使用C写的函数!