OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8153|回复: 3

ADC中断编译出错

[复制链接]

181

主题

311

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1055
金钱
1055
注册时间
2012-8-26
在线时间
52 小时
发表于 2012-9-21 21:14:51 | 显示全部楼层 |阅读模式

#include <stm32f10x_lib.h>
#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "led.h" 
#include "key.h"
#include "exti.h"
#include "wdg.h"
#include "timer.h"
#include "lcd.h"   
#include "rtc.h"
#include "wkup.h"
#include "adc.h"
//Mini STM32开发板范例代码13
//ADC 实验
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
  void ADC1_2_IRQChannel(void)//中断函数
{
LED1=!LED1;   
}
int main(void)
{
u16 adcx;
float temp;
  Stm32_Clock_Init(9);//系统时钟设置
delay_init(72); //延时初始化
uart_init(72,9600); //串口1初始化   
LED_Init();
LCD_Init();  
Adc_Init();
        

ADC1->CR
1|=1<<5;//开启中断
MY_NVIC_Init(2,2,ADC1_2_IRQChannel,2);////这里是设置中断优先级


        OINT_COLOR=RED;//设置字体为红色 
LCD_ShowString(60,50,"Mini STM32");
LCD_ShowString(60,70,"ADC TEST");
LCD_ShowString(60,90,"ATOM@ALIENTEK");
LCD_ShowString(60,110,"2010/12/30");
//显示提示信息
POINT_COLOR=BLUE;//设置字体为蓝色
LCD_ShowString(60,130,"ADC_CH0_VAL:");      
LCD_ShowString(60,150,"ADC_CH0_VOL:0.000V");      
while(1)
{
adcx=Get_Adc(ADC_CH0);
LCD_ShowNum(156,130,adcx,4,16);//显示ADC的值
temp=(float)adcx*(3.3/4096);
adcx=temp;
LCD_ShowNum(156,150,adcx,1,16);//显示电压值
temp-=adcx;
temp*=1000;
LCD_ShowNum(172,150,temp,3,16);
LED0=!LED0;
delay_ms(250);
}
}

我想使用ADC中断,所以就在原来的基础上加了3步,1,开启中断。2,设置中断优先级。3,一个中断函数。
为什么这样编译时就会出错呢,而且这个错误我看都看不懂。原子哥能告诉我ADC中断切入函数怎么写吗

==============================================================
Build target 'Target 1'
compiling wsn19.c...
USER\wsn19.c(31): error:  #18: expected a ")"
USER\wsn19.c(31): error:  #101: "u8" has already been declared in the current scope
USER\wsn19.c(47): error:  #18: expected a ")"
USER\wsn19.c(47): error:  #167: argument of type "void (*)(void)" is incompatible with parameter of type "u8"
Target not created
=====================================================================









为了雅典娜?为了爱与正义
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

106

帖子

0

精华

高级会员

Rank: 4

积分
714
金钱
714
注册时间
2011-5-15
在线时间
147 小时
发表于 2012-9-21 23:13:17 | 显示全部楼层
回复【楼主位】wsnfly:
---------------------------------
错误提示很详细了,wsn19.c第31行少个“)”
回复 支持 反对

使用道具 举报

181

主题

311

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1055
金钱
1055
注册时间
2012-8-26
在线时间
52 小时
 楼主| 发表于 2012-9-22 07:12:21 | 显示全部楼层
回复【2楼】chunglin:
---------------------------------没少
我把ADC的中断函数换个名字就可以了 但是换中断名字 怎么进中断呀
为了雅典娜?为了爱与正义
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-9-22 09:43:30 | 显示全部楼层
ADC1_2_IRQChannel,这个就不是中断服务函数!!!
中断服务函数在.s里面有定义,一般是IRQHanlder....
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 23:04

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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