当前位置:首页 > 单片机 > 单片机
[导读]keil的信号函数用于模拟和测试串行IO,模拟IO,端口通讯等重复发生的外部事件。信号函数以关键字signal开头。在函数中必须调用twatch用于延时,不然keil会陷入死循环。twatch函数的参数表示要延时的CPU执行周期,比如

keil的信号函数用于模拟和测试串行IO,模拟IO,端口通讯等重复发生的外部事件。

信号函数以关键字signal开头。在函数中必须调用twatch用于延时,不然keil会陷入死循环。twatch函数的参数表示要延时的CPU执行周期,比如twatch(1000000)表示一个信号函数延时1000000个CPU周期。


信号函数受到如下约束:

函数的返回值类型必须为void。

函数最多只能有8个参数。

信号函数可以调用其他重定义函数和用户函数。

信号函数之间不能相互调用。

信号函数可以被用户函数调用。

信号函数必须调用twatch至少一次。如果信号函数从不调用twatch,则目标程序将得不到时间执行。而且由于不能使用Ctrl+C中断信号函数,在这种情况下μVision3将进入死循环。


1.建立函数

keil中有内建的函数编辑器,通过Debug--Function Editor来打开。打开函数编辑器时需要输入一个文件名或者打开一个由Options for Target--Debug Initialization File指定的文件。

2. 编辑例子。

下面的例子在LPC2114的P0.8引脚上输入一个如下图所示的方波。




//在200HZ的方波的低半周期中增加两个频率为1K的波

//

//

signalvoidtest(void)

{

while(1)

{

PORT0|=0x100;//P0.8置高

twatch(11059200*4/400);//延时2.5ms(200HZ)

PORT0&=~0x100;//P0.8置低

twatch(11059200*4/400);//延时2.5ms(200HZ)

PORT0|=0x100;//P0.8置高

twatch(11059200*4/400);//延时2.5ms(200HZ)

PORT0&=~0x100;//P0.8置低

twatch(11059200*4/400);//延时2.5ms(200HZ)

PORT0|=0x100;//P0.8置高

twatch(11059200*4/400);//延时2.5ms(200HZ)

PORT0&=~0x100;//P0.8置低

twatch(11059200*4/2000);//延时ms(800HZ)

PORT0|=0x100;//P0.8置高

twatch(11059200*4/2000);//延时2.5ms(400HZ)

PORT0&=~0x100;//P0.8置低

twatch(11059200*4/2000);//延时2.5ms(800HZ)

PORT0|=0x100;//P0.8置高

twatch(11059200*4/2000);//延时2.5ms(400HZ)

PORT0&=~0x100;//P0.8置低

twatch(11059200*4/2000);//延时2.5ms(800HZ)

}

}

3.编译


在信号函数编辑界面上,点击Compile按钮,编译通过与否都会有相应提示。

4. 调用信号函数

编译通过后,在软件仿真时,在控制窗口(Command窗口)中输入如下命令:

test()

注:test为信号函数名。

5.查看空闲信号函数

使用signal state命令

6. 删除信号函数(以test()为例)

signal kill test或者kill func test


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

嵌入式开发作为一种专业且技术密集型的领域,涵盖了从硬件底层驱动、中间件到应用层软件开发等多个层面的工作,其所需的工具种类繁多,各有针对性,旨在提升开发效率、保证代码质量以及简化调试过程。

关键字: 嵌入式开发 keil

之后新建新的工程,添加.a文件就可以使用了,当然也可以使用keil来添加,但是keil默认的是用.lab,需要自己配置一下文件属性,改为lib文件即可。一半release sdk的时候用这种方式很关键的,毕竟自己的核心代...

关键字: keil 文件属性 lib文件

Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联合运营,分别是德国慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software Inc。K...

关键字: mdk 安装

mdk是什么意思_STM32是什么?应用在哪里?都需要学什么?

关键字: mdk 编程

Keil、uVision、MDK、Keil C51之间的区别比较

关键字: keil c51 mdk

KEIL是公司的名称,有时候也指KEIL公司的所有软件开发工具,目前2005年Keil由ARM公司收购,成为ARM的公司之一。

关键字: keil5 mdk

DSP28335与AD7606通过SPI的串行数据交互

关键字: keil C

AD7606的并行采集

关键字: ad7606 数据 C keil

为帮助大家更好使用单片机编程软件,本文将对keil单片机编程软件仿真、调剂技巧予以讲解,并对该单片机编程软件的常见错误提示予以阐述。

关键字: 单片机编程软件 指数 keil

本文对于单片机编程软件的介绍将基于如何采用keil单片机编程软件调试stm32,如果你对单片机编程软件抑或本文内容具有兴趣,不妨继续往下阅读哦。

关键字: 单片机编程软件 指数 keil
关闭
关闭