C语言关键字volatile是一个危险的东东,笔者再用ADS做S3C2440定时器中断实验就因为这个关键字出了错.出现错误情况的准确描述是:定义一个变量时没有用volatile关键字,而且紧接着while(1)循环里边就有对这个变量的读操作. 这个实验想实现的功能是:定时时间为1s,用一个led灯显示这个时间,亮一秒钟,然后再灭一秒钟.程序实现思路是:开irq中断,开定时器0中断,并设置定时器0中断时间为1s:在中断服务程序中利用一个全局变量flag来传递定时时间到信号,每中断一次flag翻转一…