画板子的时候口线不够,把液晶的8位数据线与按键扫描复用了,
按键扫描是在定时中断中处理的,
液晶读写的时候为了防止按键扫描的影响,需要关中断,像这样。
{
__disable_irq();//关中断,主要目的是禁止定时中断执行按键扫描
访问液晶端口。。。
__enable_irq();//开中断
return;
}
现在希望我的程序在用户模式下运行,这样就无法直接关中断。
通常的办法是写软件中断执行开关中断,可感觉这样有点折腾,因为液晶端口访问程序是很短的,所以直接将液晶读写的函数定义成软件中断,用SVC调用来访问液晶端口,现在不太确定的是,SVC本身就是中断,在SVC调用过程中还需要关中断吗? |