金牌会员
- 积分
- 2236
- 威望
- 1686
- 贡献
- 430
- 兑换币
- 173
- 注册时间
- 2012-11-15
- 在线时间
- 60 小时
|
void main(void)
{
//int i=0,j=0;
DisableInterrupts;//关总中断
//变量初始化
V_Cnt=0; //行计数
Is_SendPhoto=0; //从串口发送图
exti_init(PORTA,29,rising_down); //行中断,PORTA29 端口外部中断初始化 ,上升沿触发中断,内部下拉
disable_irq(87); //行中断关闭 这块为什么要关行中断呢?然后又在isr.c中又在场中断中开了行中断,按道理应该是先进行处理行中断的吗?这块为什么不是呢?程序再外面贴着求指导呀!
exti_init(PORTB,0,falling_down); //场中断,PORTB0 端口外部中断初始化 ,下降沿触发中断,内部下拉
uart_init(UART1,115200); //初始化串口
EnableInterrupts;
while(1)
{
#ifdef TIAOSHI //串口调试
if(Is_SendPhoto)
{
//直接发送灰度数据,上位机软件会把图像信息显示出来
disable_irq(87);
disable_irq(88); //关闭PORTB中断,即关闭场中断,防止串口发送图像数据进程被打乱
//以下四句话是固定格式,是串口和上位机软件之间的协议
uart_putchar(UART1,0x01);
delayms(3000);
uart_putchar(UART1,0x01);
enable_irq(88); //打开PORTB中断
enable_irq(87);
Is_SendPhoto=0;
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|