基于uClinux嵌入式操作系统的串行接口电路设计
2014-07-18胡庆武于颖
胡庆武 于颖
摘要:近年,嵌入式系统的设计被应用到越来越多的领域,但由于嵌入式操作系统的应用是与硬件设计紧密相关的,因此,根据不同的应用环境,需对uClinux内核源码进行适当的修改。文中根据实际工程设计案例,对串行接口电路的硬件设计与uClinux内核的裁剪进行了详细的描述,为uClinux操作系统在嵌入式领域的应用起到了一定的借鉴作用。
关键词:串口电路;uClinux;嵌入式系统;裁剪
中图分类号:TP368 文献标识码:A 文章编号:1009-3044(2014)13-3148-02
The Disign of Serical Circuit Based on uClinux Embedded System
HU Qing-wu, YU Ying
(Shenyang Aircraft Design and Research Institute, Shenyang 110035, China)
Abstract: Recently, embedded system is used in more and more domain, but because it is based on the hardware circuit, so uClinux kernel must be edit according to different enviroment. This paper based on the engineering case, elaborate how to design hardware and how to edit the uClinux kernel. This solution is useful for the uClinux embedded systems engineer application.
Key words: Serial circuit; uClinux; Embedded system; Edit
根据实验任务的需要,实现上位机与下位机之间的快速数据传输,构建了以S3C4510B芯片为核心,配以存储容量为2M的Flash存储器,存储容量为16M的SDRAM寄存器,成功的将以串行接口电路为信息交换窗口的嵌入式系统应用到实际工程中。
1 硬件电路设计
1.1 Flash存储器接口电路设计
本系统选用了一片HY29LV160,其单片存储容量为2M字节,用于存放程序代码,系统上电或复位后从此处获取指令开始执行。因此,若要将Flash存储器配置到指定路径下,需在硬件设计时考虑存储器CE端、OE端、BYTE位的连接方式[1][2],本系统电路连接方式如图1所示。
图1 Flash存储器设计电路
1.2 串行接口电路设计
串口电路在本系统中用于完成最终的通信功能,由于RS-232标准所定义的高、低电平信号与本系统所选用的硬件不同,因此,在硬件设计时,选用了MAX232芯片作为电平转换器,具体硬件连接方式如图2所示。
图2 串行接口设计电路
2 针对硬件设计的uClinux内核修改
2.1 片内寄存器的修改
在hardware.h中定义了本系统的时钟频率为50 MHz:
#define fMCLK_MHz ( 50 * MHz)
通过ROM/SRAM/Flash Bank0 与DRAM/SDRAM/Bank0 ,分别定义了16位数据宽度与
32位数据宽度[3]。
# define DSR (2<<0)
# define DSD (3<<12)
2.2 cnofig.in与hardware.h文件的修改
为满足本系统所需的存储器空间,对config.in文件与hardware.h文件进行修改:
#define ROM_BASE0 ((0x00000000>>16) <<10)
# define SDRAM_BASE0 ((0x01000000)>>16)<<10)
#define SDRAM_NEXT0 ((0x02000000>>16)<<20)
#define ROM_NEXT0 ((0x00200000>>16)<<20)
2.3 Makefile文件的修改
在Makefile文件中,需要修改uClinux的运行地址,即程序开始执行的地址,也即Flash中前64K的位置。具体方式如下:
ZREALADDR=0x00008000
ZTEXTADDR=0x00010000
2.4 配置文件的修改
为了控制配置文件的显示[4]与编译内核时的宏,符合本系统所设计的16M的SDRAM需求,对配置文件进行如下修改:
FLASH_MEM_BASE 0x01000000
2.5 波特率的设定
内核默认的波特率是19200,N,8,1,无流控。与本系统相符,因此不需要改动。
通过make image指令对内核进行编译,系统可以成功运行。至此,根据文中所设定的硬件环境,针对uClinux内核的裁剪已经全部完成,基于uClinux嵌入式操作系统的串行接口电路可以成功的将编译后内核程序烧入到Flash芯片中,并进行上位机与下位机之间的正常通信。
3 总结
文中针对特定的硬件设计,详细介绍了基于uClinux嵌入式操作系统的串行接口电路设计方法,随着嵌入式系统的普及,像uClinux这种内核裁剪灵活的操作系统,必将应用到越来越多的工程领域。
参考文献:
[1] 杨德斌,吴海涛,李慧斌.基于ARM-uClinux的在线数据采集前端机[J].仪表技术与传感器,2007(3):19-20.
[2] 黄江平,吴昊.基于ARM和CC-Link的恒压供水加压站设计[J].仪表技术与传感器,2012(4):48-50.
[3] 李光驹.ARM应用系统开发详解[M].北京:清华大学出版社,2004.
[4] 黄庆生.Linux基础教程[M].北京:人民邮电出版社,1999.
摘要:近年,嵌入式系统的设计被应用到越来越多的领域,但由于嵌入式操作系统的应用是与硬件设计紧密相关的,因此,根据不同的应用环境,需对uClinux内核源码进行适当的修改。文中根据实际工程设计案例,对串行接口电路的硬件设计与uClinux内核的裁剪进行了详细的描述,为uClinux操作系统在嵌入式领域的应用起到了一定的借鉴作用。
关键词:串口电路;uClinux;嵌入式系统;裁剪
中图分类号:TP368 文献标识码:A 文章编号:1009-3044(2014)13-3148-02
The Disign of Serical Circuit Based on uClinux Embedded System
HU Qing-wu, YU Ying
(Shenyang Aircraft Design and Research Institute, Shenyang 110035, China)
Abstract: Recently, embedded system is used in more and more domain, but because it is based on the hardware circuit, so uClinux kernel must be edit according to different enviroment. This paper based on the engineering case, elaborate how to design hardware and how to edit the uClinux kernel. This solution is useful for the uClinux embedded systems engineer application.
Key words: Serial circuit; uClinux; Embedded system; Edit
根据实验任务的需要,实现上位机与下位机之间的快速数据传输,构建了以S3C4510B芯片为核心,配以存储容量为2M的Flash存储器,存储容量为16M的SDRAM寄存器,成功的将以串行接口电路为信息交换窗口的嵌入式系统应用到实际工程中。
1 硬件电路设计
1.1 Flash存储器接口电路设计
本系统选用了一片HY29LV160,其单片存储容量为2M字节,用于存放程序代码,系统上电或复位后从此处获取指令开始执行。因此,若要将Flash存储器配置到指定路径下,需在硬件设计时考虑存储器CE端、OE端、BYTE位的连接方式[1][2],本系统电路连接方式如图1所示。
图1 Flash存储器设计电路
1.2 串行接口电路设计
串口电路在本系统中用于完成最终的通信功能,由于RS-232标准所定义的高、低电平信号与本系统所选用的硬件不同,因此,在硬件设计时,选用了MAX232芯片作为电平转换器,具体硬件连接方式如图2所示。
图2 串行接口设计电路
2 针对硬件设计的uClinux内核修改
2.1 片内寄存器的修改
在hardware.h中定义了本系统的时钟频率为50 MHz:
#define fMCLK_MHz ( 50 * MHz)
通过ROM/SRAM/Flash Bank0 与DRAM/SDRAM/Bank0 ,分别定义了16位数据宽度与
32位数据宽度[3]。
# define DSR (2<<0)
# define DSD (3<<12)
2.2 cnofig.in与hardware.h文件的修改
为满足本系统所需的存储器空间,对config.in文件与hardware.h文件进行修改:
#define ROM_BASE0 ((0x00000000>>16) <<10)
# define SDRAM_BASE0 ((0x01000000)>>16)<<10)
#define SDRAM_NEXT0 ((0x02000000>>16)<<20)
#define ROM_NEXT0 ((0x00200000>>16)<<20)
2.3 Makefile文件的修改
在Makefile文件中,需要修改uClinux的运行地址,即程序开始执行的地址,也即Flash中前64K的位置。具体方式如下:
ZREALADDR=0x00008000
ZTEXTADDR=0x00010000
2.4 配置文件的修改
为了控制配置文件的显示[4]与编译内核时的宏,符合本系统所设计的16M的SDRAM需求,对配置文件进行如下修改:
FLASH_MEM_BASE 0x01000000
2.5 波特率的设定
内核默认的波特率是19200,N,8,1,无流控。与本系统相符,因此不需要改动。
通过make image指令对内核进行编译,系统可以成功运行。至此,根据文中所设定的硬件环境,针对uClinux内核的裁剪已经全部完成,基于uClinux嵌入式操作系统的串行接口电路可以成功的将编译后内核程序烧入到Flash芯片中,并进行上位机与下位机之间的正常通信。
3 总结
文中针对特定的硬件设计,详细介绍了基于uClinux嵌入式操作系统的串行接口电路设计方法,随着嵌入式系统的普及,像uClinux这种内核裁剪灵活的操作系统,必将应用到越来越多的工程领域。
参考文献:
[1] 杨德斌,吴海涛,李慧斌.基于ARM-uClinux的在线数据采集前端机[J].仪表技术与传感器,2007(3):19-20.
[2] 黄江平,吴昊.基于ARM和CC-Link的恒压供水加压站设计[J].仪表技术与传感器,2012(4):48-50.
[3] 李光驹.ARM应用系统开发详解[M].北京:清华大学出版社,2004.
[4] 黄庆生.Linux基础教程[M].北京:人民邮电出版社,1999.
摘要:近年,嵌入式系统的设计被应用到越来越多的领域,但由于嵌入式操作系统的应用是与硬件设计紧密相关的,因此,根据不同的应用环境,需对uClinux内核源码进行适当的修改。文中根据实际工程设计案例,对串行接口电路的硬件设计与uClinux内核的裁剪进行了详细的描述,为uClinux操作系统在嵌入式领域的应用起到了一定的借鉴作用。
关键词:串口电路;uClinux;嵌入式系统;裁剪
中图分类号:TP368 文献标识码:A 文章编号:1009-3044(2014)13-3148-02
The Disign of Serical Circuit Based on uClinux Embedded System
HU Qing-wu, YU Ying
(Shenyang Aircraft Design and Research Institute, Shenyang 110035, China)
Abstract: Recently, embedded system is used in more and more domain, but because it is based on the hardware circuit, so uClinux kernel must be edit according to different enviroment. This paper based on the engineering case, elaborate how to design hardware and how to edit the uClinux kernel. This solution is useful for the uClinux embedded systems engineer application.
Key words: Serial circuit; uClinux; Embedded system; Edit
根据实验任务的需要,实现上位机与下位机之间的快速数据传输,构建了以S3C4510B芯片为核心,配以存储容量为2M的Flash存储器,存储容量为16M的SDRAM寄存器,成功的将以串行接口电路为信息交换窗口的嵌入式系统应用到实际工程中。
1 硬件电路设计
1.1 Flash存储器接口电路设计
本系统选用了一片HY29LV160,其单片存储容量为2M字节,用于存放程序代码,系统上电或复位后从此处获取指令开始执行。因此,若要将Flash存储器配置到指定路径下,需在硬件设计时考虑存储器CE端、OE端、BYTE位的连接方式[1][2],本系统电路连接方式如图1所示。
图1 Flash存储器设计电路
1.2 串行接口电路设计
串口电路在本系统中用于完成最终的通信功能,由于RS-232标准所定义的高、低电平信号与本系统所选用的硬件不同,因此,在硬件设计时,选用了MAX232芯片作为电平转换器,具体硬件连接方式如图2所示。
图2 串行接口设计电路
2 针对硬件设计的uClinux内核修改
2.1 片内寄存器的修改
在hardware.h中定义了本系统的时钟频率为50 MHz:
#define fMCLK_MHz ( 50 * MHz)
通过ROM/SRAM/Flash Bank0 与DRAM/SDRAM/Bank0 ,分别定义了16位数据宽度与
32位数据宽度[3]。
# define DSR (2<<0)
# define DSD (3<<12)
2.2 cnofig.in与hardware.h文件的修改
为满足本系统所需的存储器空间,对config.in文件与hardware.h文件进行修改:
#define ROM_BASE0 ((0x00000000>>16) <<10)
# define SDRAM_BASE0 ((0x01000000)>>16)<<10)
#define SDRAM_NEXT0 ((0x02000000>>16)<<20)
#define ROM_NEXT0 ((0x00200000>>16)<<20)
2.3 Makefile文件的修改
在Makefile文件中,需要修改uClinux的运行地址,即程序开始执行的地址,也即Flash中前64K的位置。具体方式如下:
ZREALADDR=0x00008000
ZTEXTADDR=0x00010000
2.4 配置文件的修改
为了控制配置文件的显示[4]与编译内核时的宏,符合本系统所设计的16M的SDRAM需求,对配置文件进行如下修改:
FLASH_MEM_BASE 0x01000000
2.5 波特率的设定
内核默认的波特率是19200,N,8,1,无流控。与本系统相符,因此不需要改动。
通过make image指令对内核进行编译,系统可以成功运行。至此,根据文中所设定的硬件环境,针对uClinux内核的裁剪已经全部完成,基于uClinux嵌入式操作系统的串行接口电路可以成功的将编译后内核程序烧入到Flash芯片中,并进行上位机与下位机之间的正常通信。
3 总结
文中针对特定的硬件设计,详细介绍了基于uClinux嵌入式操作系统的串行接口电路设计方法,随着嵌入式系统的普及,像uClinux这种内核裁剪灵活的操作系统,必将应用到越来越多的工程领域。
参考文献:
[1] 杨德斌,吴海涛,李慧斌.基于ARM-uClinux的在线数据采集前端机[J].仪表技术与传感器,2007(3):19-20.
[2] 黄江平,吴昊.基于ARM和CC-Link的恒压供水加压站设计[J].仪表技术与传感器,2012(4):48-50.
[3] 李光驹.ARM应用系统开发详解[M].北京:清华大学出版社,2004.
[4] 黄庆生.Linux基础教程[M].北京:人民邮电出版社,1999.