智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 875|回复: 1
打印 上一主题 下一主题

求大神指导,DMA

[复制链接]

1

主题

7

帖子

0

精华

高级会员

Rank: 4

积分
631
威望
320
贡献
191
兑换币
196
注册时间
2013-8-3
在线时间
60 小时
毕业学校
浙江科技学院
跳转到指定楼层
1#
发表于 2014-3-13 22:13:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
         for(i=0;i<30;i++)
         {
           for(j=0;j<260;j++)
           {
         uart_send1(UART3,Pix_Data[i][j];主函数向上位机发送数据
           
        void PORTC_IRQHandler()行、场中断加DMA
{
  if((PORTC_ISFR & (1<<18))&&!Field_over)     //                         //PTC18触发中断,行中断
  {
    PORTC_ISFR |= (1<<18);                                //写1清中断标志位
    if((++Vcnt)%4== 0)                                  //判断该行数据是否需要,根据自己需要的行数自己设定判别条件
    {      
      DMA_ERQ|=(1<<1);         //使能通道CHn 硬件请求1<<1后面的一为CHn
    }
  }
  if(PORTC_ISFR & (1<<15))                                 //PTC15触发中断,场中断
  {
    PORTC_ISFR |= (1<<15);                                  //写1清中断标志位   
   
    Field_over=0;
        LPLD_DMA_Init(&User_Def_DMA_Init);
   
//   enable_irq(89);                                     //使能PORTA中断,即开启行中断,PORTA的ISR中断号为87
   
    Vcnt=0;                                            //行采集计数清零
    catch_image_row=0;
    Is_SendPhoto = 0;                                   //发送图像标志
  }
  
}
void dma1_isr(void)
{
    DMA_INT|=(DMA_INT_INT0_MASK<<DMA_CH1);             //清除通道传输中断标志位
    DMA_ERQ &=~(DMA_ERQ_ERQ0_MASK<<(DMA_CH1));         //禁止通道硬件DMA请求

//   uart_send1 (UART3, 4);
   
   if(Vcnt==236)     //2,238
   {  
     Field_over=1;
      Is_SendPhoto = 1;  
   }
}

回复

使用道具 举报

1

主题

7

帖子

0

精华

高级会员

Rank: 4

积分
631
威望
320
贡献
191
兑换币
196
注册时间
2013-8-3
在线时间
60 小时
毕业学校
浙江科技学院
2#
 楼主| 发表于 2014-3-13 22:14:34 | 只看该作者
这是上位机图像

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-20 11:55 , Processed in 0.051446 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表