http://blog.csdn.net/k331922164/article/details/45202243
2015
脚本,跟C语言一样,是一种编程语言,但是,脚本语言抽象层次更高,用脚本可以轻松处理文本、管理系统(如linux下的shell)。
而我们在做单片机开发的时候,经常跟不同的外设打交道,而某些外设有寄存器列表,如果我们手工地把这些寄存器列表弄成头文件,将是一件非常累的体力活。
这时,脚本语言正是为此而生啊,使用它可以非常方便地生成芯片寄存器列表的头文件。下面以TCL/TK为例,处理ADE7878芯片的寄存器列表并生成51单片机的头文件。
1、打开ADE7878的datasheet,找到如下图位置。
2、用文本选择工具把寄存器列表,copy到记事本当中
3、清一色地处理成如下形状(去掉中文和少量不规则的行)
4、下载并安装activetcl,TCK/TK的官网有,http://www.activestate.com/activetcl
下载并安装gvim,百度可搜到。
添加gvim的安装路径到系统环境变量PATH当中,我这里gvim.exe的路径是D:\Vim\vim73
5、在cmd下输入tclsh,进入TCL解释器
6、用gvim编辑脚本文件
在TCL解释器中,输入gvim h.tcl
并输入如下内容
7、用source命令运行脚本文件
在工作目录下,会看到有.h文件生成
其中,h是tcl脚本文件,ADE7878_head是未处理的txt文件,ADE7878.h是我们需要的51单片机头文件
ADE7878.h的部分内容如下:
怎么样?是不是节省了很多时间?而且写好一份脚本,以后遇到同类事情都是瞬间解决,一劳永逸。
想一下,如果这个功能,用C语言来写,是多么地复杂,而且不容易维护。
如果你是FPGA/ASIC工程师,可以学习TCL/TK,推荐的教材是《Tcl_Tk入门经典(第2版)》,如果你是单片机工程师,可以学习perl,推荐的教材是《Perl语言入门(第五版)》,如果你是嵌入式工程师,可以学习BASH《SHELL脚本学习指南》。以上推荐的教材均可以网上找到PDF版的电子书。
其中perl脚本的语法很像C语言,而且相对于其它脚本语言来说,更具有通用性。
温馨提示:脚本语言可以说是最容易学的语言了,有经验的程序员,可以在两小时内掌握一门脚本语言,并写出具有实用价值的脚本。
联系客服