[原创] LM3S811开发板使用心得——简易RFID门禁

rogerangel   2011-5-14 22:06 楼主

这个会是第一个版本,下一个版本会对程序优化加强功能,并且制作上位机,敬请期待。其实这个也是一个一个新用户的体验,大概讲一下怎么用lib用开发你自己的应用。

首先说一下做这个的原因,刚好之前想做一个开门器,所以手头有一个RFID的读卡模块,所以第一个想法就是把它和LM3S链接起来做一个简单的门禁或者考勤系统。

在接触811之前,我从来没有接触过ARM单片机,所以上手过程比较漫长。但是说实话TIARM在开发支持上面做的相当好,让我们这些新手也可以比较快的上手。尤其值得一提的就是tiStellarisWare的库文件,开发起来实在是太好了,我在程序中主要用到了UART中的知识,这方面TI的帮助文档给了我很多启发。

图片在三楼

接下来会增加继电器和上位机控制模块,所以那时可能会用到两个UART口

[ 本帖最后由 rogerangel 于 2011-5-14 22:18 编辑 ]

    RFID.rar (2011-5-14 22:14 上传)

    72.7 KB, 下载次数: 117

回复评论 (14)

比如说,他在文档中对UART用到的几个函数进行了,详细的分析,甚至还有相关的使用方法。如我在程序中用到的一个UARTConfigSetExpClk这个函数,帮助文档中给这个做了详细的解释。

22.2.2.9 UARTConfigSetExpClk

Sets the configuration of a UART.

Prototype:

void

UARTConfigSetExpClk(unsigned long ulBase,

unsigned long ulUARTClk,

unsigned long ulBaud,

unsigned long ulConfig)

Parameters:

ulBase is the base address of the UART port.//端口号

ulUARTClk is the rate of the clock supplied to the UART module.

ulBaud is the desired baud rate.//波特率

ulConfig is the data format for the port (number of data bits, number of stop bits, and parity).//数据位,停止位等信息的悬着

Description://这边这个函数的完整的表述和设置的方法

This function will configure the UART for operation in the specified data format. The baud rate

is provided in the ulBaud parameter and the data format in the ulConfig parameter.

The ulConfig parameter is the logical OR of three values: the number of data bits, the

number of stop bits, and the parity. UART_CONFIG_WLEN_8, UART_CONFIG_WLEN_7,

UART_CONFIG_WLEN_6, and UART_CONFIG_WLEN_5 select from eight to five data bits

per byte (respectively). UART_CONFIG_STOP_ONE and UART_CONFIG_STOP_TWO

select one or two stop bits (respectively). UART_CONFIG_PAR_NONE,

UART_CONFIG_PAR_EVEN, UART_CONFIG_PAR_ODD, UART_CONFIG_PAR_ONE,

and UART_CONFIG_PAR_ZERO select the parity mode (no parity bit, even parity bit, odd

parity bit, parity bit always one, and parity bit always zero, respectively).

The peripheral clock will be the same as the processor clock. This will be the value returned

by SysCtlClockGet(), or it can be explicitly hard coded if it is constant and known (to save the

code/execution overhead of a call to SysCtlClockGet()).

点赞  2011-5-14 22:07

回到正题,我这个主要的功能就是LM3S811接受读卡模块读过来的信息,然后做出处理,最比并且发给上位机。

       先上图再说,

1.       程序运行图

刚开始运行时的图

1.jpg

刷完能通行的ID卡之后的界面

2.jpg

刷完不能能通行的ID卡之后的界面

  3.jpg

2.       硬件框图

  4.jpg

3.       硬件图,链接等

整体运行时的图片,线圈就是RFID模块的

5.jpg

这个就是RFID的读卡器,下面一排线是从AVR下载器中引出来的,我用来给读卡器供电,因为读卡模块是5V供电的,所以就用从下载器中获取了5V电源

6.jpg

这个就是eeworld给我们的开发板,羡慕吧,我就用了UART0连个接口,左侧两个是GNDVDD两个

7.jpg

这两张是测试用的ID卡,就是我们实验室的门禁,呵呵

  8.jpg

未完待续。。。。。。。。。。。。

[ 本帖最后由 rogerangel 于 2011-5-14 22:13 编辑 ]
点赞  2011-5-14 22:08

回复 板凳 rogerangel 的帖子

关注着,,支持!
点赞  2011-5-14 22:13
已经上传,刚才没发上去,单独上传过了
点赞  2011-5-14 22:14
现在还只是用串口助手看的,到时候会做一个上位机,方便吧id卡的信息直接写到eeprom中去
点赞  2011-5-14 22:21

回复 6楼 rogerangel 的帖子

可以用软件在 Flash 上模拟出 EEPROM
点赞  2011-5-14 22:23
学习中。。。
点赞  2011-5-14 22:25
学习了来顶顶
点赞  2011-5-15 00:53
学习来了 不错 不错 比我入门高多了
点赞  2011-5-15 07:46
楼主是 行动派 赞一个  期待见到你一步步的成果
加油!在电子行业默默贡献自己的力量!:)
点赞  2011-5-15 10:31

回复 11楼 soso 的帖子

厉害!!
点赞  2011-5-15 16:32

引用: 原帖由 soso 于 2011-5-15 10:31 发表 楼主是 行动派 赞一个 期待见到你一步步的成果

 

谢谢鼓励,因为之前一点contex-m3的经验都没有,所以从最简单的开始

点赞  2011-5-15 21:45
挺好的,努力中
点赞  2011-5-21 20:00
mark
点赞  2011-5-24 14:56
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复