智能车制作

 找回密码
 注册

扫一扫,访问微社区

12
返回列表 发新帖
楼主: 马精明123
打印 上一主题 下一主题

k60—ov7620采样问题求解??

[复制链接]

3

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
QQ
威望
391
贡献
79
兑换币
11
注册时间
2011-3-17
在线时间
15 小时
11#
 楼主| 发表于 2012-6-12 00:28:11 | 只看该作者
/******************** (C) COPYRIGHT 2011 野火嵌入式开发工作室 ********************
* 文件名       :isr.h
* 描述         :重新宏定义中断号,重映射中断向量表里的中断函数地址,
*                使其指向我们所定义的中断服务函数。声明中断服务函数
*                警告:只能在"vectors.c"包含,而且必须在"vectors.h"包含的后面!!!
*
* 实验平台     :野火kinetis开发板
* 库版本       :
* 嵌入系统     :
*
* 作者         :野火嵌入式开发工作室
* 淘宝店       :http://firestm32.taobao.com
* 技术支持论坛 :http://www.ourdev.cn/bbs/bbs_list.jsp?bbs_id=1008
**********************************************************************************/       



#ifndef __ISR_H
#define __ISR_H 1

#include  "include.h"

/*                          重新定义中断向量表
*  先取消默认的中断向量元素宏定义       #undef  VECTOR_xxx
*  在重新定义到自己编写的中断函数       #define VECTOR_xxx    xxx_IRQHandler
*  例如:
*       #undef  VECTOR_003
*       #define VECTOR_003    HardFault_Handler    重新定义硬件上访中断服务函数
*/
#undef  VECTOR_014
#undef  VECTOR_015
#if     USOC_EN > 0u    //如果定义了用ucos系统  用ucos的滴答定时器中断服务函数
  #define VECTOR_014    OS_CPU_PendSVHandler
  #define VECTOR_015    OS_CPU_SysTickHandler
#else
  #define VECTOR_014    PendSV_Handler
  #define VECTOR_015    SysTick_Handler   //滴答定时器  OS用得到
#endif

#undef  VECTOR_003
#define VECTOR_003    HardFault_Handler   //发生硬件上访 (就是程序跑飞了)     推荐调试程序时,用个LED显示来指示程序跑飞了

#undef  VECTOR_063                        //要先取消了,因为在vectors.h里默认是定义为 default_isr
#define VECTOR_063    USART1_IRQHandler   //重新定义63号中断的ISR:UART1:Single interrupt vector for UART status sources

#undef VECTOR_084
#define VECTOR_084 PIT0_IRQHandler //重新定义84号中断为PIT0_IRQHandler中断

#undef  VECTOR_103
#define VECTOR_103    PORTA_IRQHandler    //PORTA中断

#undef  VECTOR_104
#define VECTOR_104    PORTB_IRQHandler    //PORTB中断

#undef  VECTOR_017
#define VECTOR_017    LPLD_DMA_Isr        //DMA中断函数

//#undef  VECTOR_105
//#define VECTOR_105    PORTC_IRQHandler    //PORC中断

extern void PendSV_Handler(void);         //可悬起的系统调用中断服务函数
extern void HardFault_Handler(void);      //发生硬件上访(程序跑飞)
extern void SysTick_Handler(void);        //滴答时钟(os 用到)
extern void USART1_IRQHandler();          //串口1 中断接收函数
extern void PIT0_IRQHandler();            //PIT0 定时中断服务函数
extern void PORTA_IRQHandler();           //PORTA中断服务函数
extern void PORTB_IRQHandler();           //PORTB中断服务函数
//extern void PORTC_IRQHandler();           //PORTC中断服务函数
extern void LPLD_DMA_Isr(void);           //DMA中断函数
//DMA模块中断服务定义
#undef  VECTOR_016
#define VECTOR_016 LPLD_DMA_Isr
#undef  VECTOR_017
#define VECTOR_017 LPLD_DMA_Isr
#undef  VECTOR_018
#define VECTOR_018 LPLD_DMA_Isr
#undef  VECTOR_019
#define VECTOR_019 LPLD_DMA_Isr
#undef  VECTOR_020
#define VECTOR_020 LPLD_DMA_Isr
#undef  VECTOR_021
#define VECTOR_021 LPLD_DMA_Isr
#undef  VECTOR_022
#define VECTOR_022 LPLD_DMA_Isr
#undef  VECTOR_023
#define VECTOR_023 LPLD_DMA_Isr
#undef  VECTOR_024
#define VECTOR_024 LPLD_DMA_Isr
#undef  VECTOR_025
#define VECTOR_025 LPLD_DMA_Isr
#undef  VECTOR_026
#define VECTOR_026 LPLD_DMA_Isr
#undef  VECTOR_027
#define VECTOR_027 LPLD_DMA_Isr
#undef  VECTOR_028
#define VECTOR_028 LPLD_DMA_Isr
#undef  VECTOR_029
#define VECTOR_029 LPLD_DMA_Isr
#undef  VECTOR_030
#define VECTOR_030 LPLD_DMA_Isr
#undef  VECTOR_031
#define VECTOR_031 LPLD_DMA_Isr
#undef  VECTOR_032
#define VECTOR_032 LPLD_DMA_Isr
//以下函数在LPLD_Kinetis底层包,不必修改
extern void LPLD_DMA_Isr(void);

#endif  //__ISR_H

/* End of "isr.h" */
回复 支持 反对

使用道具 举报

3

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
QQ
威望
391
贡献
79
兑换币
11
注册时间
2011-3-17
在线时间
15 小时
12#
 楼主| 发表于 2012-6-12 00:28:26 | 只看该作者
#ifndef __ISR_H
#define __ISR_H 1

#include  "include.h"

/*                          重新定义中断向量表
*  先取消默认的中断向量元素宏定义       #undef  VECTOR_xxx
*  在重新定义到自己编写的中断函数       #define VECTOR_xxx    xxx_IRQHandler
*  例如:
*       #undef  VECTOR_003
*       #define VECTOR_003    HardFault_Handler    重新定义硬件上访中断服务函数
*/
#undef  VECTOR_014
#undef  VECTOR_015
#if     USOC_EN > 0u    //如果定义了用ucos系统  用ucos的滴答定时器中断服务函数
  #define VECTOR_014    OS_CPU_PendSVHandler
  #define VECTOR_015    OS_CPU_SysTickHandler
#else
  #define VECTOR_014    PendSV_Handler
  #define VECTOR_015    SysTick_Handler   //滴答定时器  OS用得到
#endif

#undef  VECTOR_003
#define VECTOR_003    HardFault_Handler   //发生硬件上访 (就是程序跑飞了)     推荐调试程序时,用个LED显示来指示程序跑飞了

#undef  VECTOR_063                        //要先取消了,因为在vectors.h里默认是定义为 default_isr
#define VECTOR_063    USART1_IRQHandler   //重新定义63号中断的ISR:UART1:Single interrupt vector for UART status sources

#undef VECTOR_084
#define VECTOR_084 PIT0_IRQHandler //重新定义84号中断为PIT0_IRQHandler中断

#undef  VECTOR_103
#define VECTOR_103    PORTA_IRQHandler    //PORTA中断

#undef  VECTOR_104
#define VECTOR_104    PORTB_IRQHandler    //PORTB中断

#undef  VECTOR_017
#define VECTOR_017    LPLD_DMA_Isr        //DMA中断函数

//#undef  VECTOR_105
//#define VECTOR_105    PORTC_IRQHandler    //PORC中断

extern void PendSV_Handler(void);         //可悬起的系统调用中断服务函数
extern void HardFault_Handler(void);      //发生硬件上访(程序跑飞)
extern void SysTick_Handler(void);        //滴答时钟(os 用到)
extern void USART1_IRQHandler();          //串口1 中断接收函数
extern void PIT0_IRQHandler();            //PIT0 定时中断服务函数
extern void PORTA_IRQHandler();           //PORTA中断服务函数
extern void PORTB_IRQHandler();           //PORTB中断服务函数
//extern void PORTC_IRQHandler();           //PORTC中断服务函数
extern void LPLD_DMA_Isr(void);           //DMA中断函数
//DMA模块中断服务定义
#undef  VECTOR_016
#define VECTOR_016 LPLD_DMA_Isr
#undef  VECTOR_017
#define VECTOR_017 LPLD_DMA_Isr
#undef  VECTOR_018
#define VECTOR_018 LPLD_DMA_Isr
#undef  VECTOR_019
#define VECTOR_019 LPLD_DMA_Isr
#undef  VECTOR_020
#define VECTOR_020 LPLD_DMA_Isr
#undef  VECTOR_021
#define VECTOR_021 LPLD_DMA_Isr
#undef  VECTOR_022
#define VECTOR_022 LPLD_DMA_Isr
#undef  VECTOR_023
#define VECTOR_023 LPLD_DMA_Isr
#undef  VECTOR_024
#define VECTOR_024 LPLD_DMA_Isr
#undef  VECTOR_025
#define VECTOR_025 LPLD_DMA_Isr
#undef  VECTOR_026
#define VECTOR_026 LPLD_DMA_Isr
#undef  VECTOR_027
#define VECTOR_027 LPLD_DMA_Isr
#undef  VECTOR_028
#define VECTOR_028 LPLD_DMA_Isr
#undef  VECTOR_029
#define VECTOR_029 LPLD_DMA_Isr
#undef  VECTOR_030
#define VECTOR_030 LPLD_DMA_Isr
#undef  VECTOR_031
#define VECTOR_031 LPLD_DMA_Isr
#undef  VECTOR_032
#define VECTOR_032 LPLD_DMA_Isr
//以下函数在LPLD_Kinetis底层包,不必修改
extern void LPLD_DMA_Isr(void);

#endif  //__ISR_H
回复 支持 反对

使用道具 举报

3

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
QQ
威望
391
贡献
79
兑换币
11
注册时间
2011-3-17
在线时间
15 小时
13#
 楼主| 发表于 2012-6-12 00:29:24 | 只看该作者
帮我看看,我不知道错在哪里,就是踩不到!!谢谢了
回复 支持 反对

使用道具 举报

21

主题

60

帖子

0

精华

高级会员

Rank: 4

积分
714
威望
482
贡献
128
兑换币
2
注册时间
2012-2-9
在线时间
52 小时
毕业学校
河北工业大学
14#
发表于 2012-6-17 09:05:23 | 只看该作者
马精明123 发表于 2012-6-12 00:25
//DMA初始化结构体赋值
  User_Def_DMA_Init.Channelx          =DMA_CH1;               //设置为通道1
...

你设置的c口为dma触发源,具体是第几个口呀pc几,代码里怎么看不出来,比如dma0用pb11怎么设置?
回复 支持 反对

使用道具 举报

3

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
QQ
威望
391
贡献
79
兑换币
11
注册时间
2011-3-17
在线时间
15 小时
15#
 楼主| 发表于 2012-6-18 23:34:11 | 只看该作者
笨鹅 发表于 2012-6-17 09:05
你设置的c口为dma触发源,具体是第几个口呀pc几,代码里怎么看不出来,比如dma0用pb11怎么设置?

我用的是C0作为触发的口,B0为行中断,B3为场中断,可是不知道怎么写,求前辈给指点啊!!特别是DMA!!先行谢过!!!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-10 10:54 , Processed in 0.076816 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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