单片机脚本
① 使用定时器1编写一个单片机延时函数,要求延时10s左右后,点亮2.6控制的LED灯
时钟周期:
1/时钟源,在我现在这块板子上,晶振频率是11.0592M,也就是时钟周期是 1/11059200秒
机器周期:
一般51单片机是12个时钟周期,我的板子也就是 12/11059200秒
单次定时最长时间:
如果是16位的计数器,16位最大值是65535,共可计数65536次。基本的常数一定要记住,还要记住8位最大值是255,共可计数256次,还要记住8位上每位代表的数值。
12 * 65536/11059200 = 0.0711 s,也就是,71 ms内的定时可以单次定时就完成。如果定时时间超过71 ms,就要循环了。
一次定时需要几次机器周期:
计算公式:定时秒数/机器周期
比如我要定时1秒, 1/(12/11059200)= 921600次,16位计数器最大可计数65536次,921600次早就益出了。我们可以每次定时10 ms,循环100次就可以定时1秒了,1 s缩小100百倍就是10 ms, 也就是每次需要计数9216次。
确实计数器初始值:
定时10 ms时,如果计数器从0开始计数,我们就不知道什么时候到了9216次。所以应该计数了9216次,16位计数器最多计数95536次,然后就溢出,一溢出TCON的TF位就会置1,我们只要经常检测TF位就可以知道什么时候完成10ms的定时了。
计算公式:计数器初始值=最大计数次数 - 需要计数次数
如果定时10 ms,计数器的初始值就是 65536 - 9216
计算计数器的高位和低位:
16位的计数器,也就是两个8位组成,8位的最大计数次数是256。所以:
计数器高位 = 初始值/256
计数器低位 = 初始值%256
② 单片机应用程序的开发步骤
具体步骤如下:
1、首先,开启我们的keil软件,具体的安装步骤就不做太多的介绍了;
开启后,点击菜单栏上的Project选项,创建我们的工程,如图所示;
编译完成后,在我们的文件夹下找到.hex的文件,将其烧写到我们的芯片中即可。
③ javascript可以写单片机么
js只是web程序用的脚本。只有浏览器才带有解释引擎。而单片必须要汇编语言才可以。这完全是风马牛不相及的两种语言
④ 有用于单片机程序开发的解释型语言(脚本语言)吗
单片机变成现在已经很简单了,用C可以搞定。
不过单片机要实现复杂的功能的,需要考虑的因素很多很多,这点和游戏不同,游戏的流程是简单的向下发展的,用脚本很容易实现,单片机属于复杂程序处理范畴,简单的功能可以像你说的用脚本实现,稍微难一点的就不行了,因为还需要和硬件还有具体功能配合好。
我用过的一款iccavr编译器,支持图形界面设置单片机的一些简单参数,自动编程,不过真正执行的程序还得自己用C编,没办法,细节太多,之间的关系也太多,脚本做不来的。