如果自己想做单片机实验小实验,需要哪些

学生实验单片机_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
学生实验单片机
&&学生实验单片机
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩16页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢学单片机都可以做哪些有趣的实验?_百度知道
学单片机都可以做哪些有趣的实验?
我有更好的答案
难的事坚持不懈的学习下去。
我想这就是学习单片机的诀窍、液晶等,这就是单片机和电子的关系。单片机是一种潮流、LED屏幕,学会了AVR别的你就全明白了,不建议你以后用汇编编程,但是建议你看一下汇编程序,完后玩一点更稍级的18B20、DS1302,与其整日把时髦的技术挂在嘴边,不如把最基本的东西牢牢记在心里,学习单片机并不难。呵呵,看起来像是做广告,了解单片机内部工作原理。
学单片机之前先把C语言弄透,以后会少走好多弯路。
至于实验初学者可以先学流水灯、矩阵按键,这些都OK了之后下载一份Mega16的芯片说明书,然后买一本马潮老师写的单片机原理。初学者建议您用AVR,51就别学了,不过这个网站的学习环境远远比混乱的现实世界好~
记住:最难能可贵的就是坚持,这些都会了你就算‘明白’单片机了,然后往更高层次发展。
单片机是工具,它需要你具备一定的模拟、数字基础知识,不是因为它老,是因为AVR涵盖的知识多。
我的心得。
然后的问题是程序下载器,这个有卖的,ISP下载线就可以,大约三四十块钱,也可以自己做:单片机不是用来学的,在这个网上可以订得到,我是在书店买的,你要是有什么不会的话,学这些都不难,最难的是坚持学下去。手机上、MP3上的控制芯片现在用的是ARM,这算是一种更高级的单片机,我的AVR就是在这里学会的,ouravr.com上也能找到电路图,至于编译器建议你用WINAVR,在这个网站上也有下载链接,从大2开始、数码管扫描,在网站论坛上留言他会给你解答,这个网站对我的帮助很大,是一个纯技术的网站,所有源码公开,是用来玩的,推动电子往更高层次发展的潮流。
我们老师告诉我一句话:切忌做浮躁的单片机工程师我和单片机打了5年交道了
采纳率:61%
为您推荐:
其他类似问题
单片机的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。豆丁微信公众号
君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
单片机必做实验
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口现在的位置:
只要一块单片机就能成为智能家庭,你相信吗?
一提到智能家庭,大家可能首先想到的是各种大佬级公司搞的牛逼产品,或者说是创新产品。想想就觉得很复杂,有的用工控机,有的用树莓派,还有的用arduino,不管用什么,都绕不过服务器进行控制,比如yeelink平台,腾讯的智能硬件平台等等。其实,真实实现起来,并没有想想中这么复杂,我们甚至只用一个小的单片机就能实现。
一.单片机实现web服务器
探讨用单片机来实现web服务器的文章通过baidu也能找到几篇,但比较详实的实现方法并没有找到,这里考虑有两种思路可以完成,一种是有线的lan模块,如w5500,这种模块本身就带有web服务的部分功能,使用起来比较简单,但是只能基于lan进行访问。另一种是通过stm32等单片机,配合网络模块来完成。当前我能想到的最简单的方法就是用stm32+esp8266来实现。
基于第一种方法,我觉得受模块性能影响比较大,受限于模块,没有开发感。于是考虑用第二种方法。这个方法里,有人用arduino来完成,这要基于c进行编程。另外,就是考虑用micropython,这样直接可以用python来实现。这里依然使用tpyboardV202(某宝上有卖,30元)详细信息可参考。
二.模拟实现家庭智能家居控制平台
因为没有想好要做一个多么复杂的实验,只是想能模拟一下效果,所有在整个的模块过程中,我选用了tpyboardv202开发板做主控制板,用一个发光二极管来模拟一个台灯(现实中,这里其实可以用一个继电器来控制其它设备的通断电),用一个直流小电机加迷你风扇叶表示模拟电风扇。整个实现还用到了一个三极管(S9014,NPN)来控制直流电机。
三.硬件的搭建与连接
1、发光二极管的使用
发光二极管使用比较简单,直接看它的两条“腿”,长的那个是正极,反之是负极。
2、直流小电机的使用方法
上图直流小电机中,红色框内的两个接线端A和B,无论那个接正极或负极都可以,只不过转动的方向不一样而已。本次我是用B端接入正极,正好是顺时针转动。
3、三极管S9014(NPN)的使用方法
本次我们使用S9014的放大和开关功能,集电极接入v202的3.3V引脚,发射极接入电机某一端,通过给基极高低电平来控制发射极和集电极之间是否导通,从而控制直流电机转动或停止。
下面来介绍一下接线方法
三极管(S9014) TPYBoard v202 直流小电机
集电极 3.3V –
基极 G5 –
发射极 – B 端
– GND A端
TPYBoard v202 发光二极管
我的实物连接图
利用micropython实现web服务器
首先,编辑一个main.py文件。v202开机自启动main.py文件
try: importusocket assocket except: importsocket importnetwork frommachine importUART frommachine importPinled_flag=Pin( 2, Pin.OUT) #esp8266模块上的小灯 高电平:灭 低电平:亮led = Pin( 4, Pin.OUT) #发光二极管的控制引脚motor = Pin( 5, Pin.OUT) #直流电机的控制引脚#初始化led.low()motor.low()led_flag.high() defdo_connect(ssid,pwd):sta_if = network.WLAN(network.STA_IF) #STA 模式sta_if.active( False) ifnotsta_if.isconnected(): #判断是否连接sta_if.active( True) sta_if.connect(ssid,pwd) #ssid:WIFI名称 pwd:WIFI 密码whilenotsta_if.isconnected(): passifsta_if.isconnected(): returnsta_if.ifconfig()[ 0] defmain(ip_,dev_data,login_data,name,pwd):s = socket.socket() ai = socket.getaddrinfo(ip_, 80) addr = ai[ 0][- 1] s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) s.bind(addr) s.listen( 5) led_flag.low() #s_data=login_datawhileTrue: res = s.accept() client_s = res[ 0] client_addr = res[ 1] led_flag.high() req =client_s.readline() whileTrue: h = client_s.readline() ifh == b""orh == b"rn": break#print(h)req+=(h.decode( 'utf-8').lower()) print( "Request:") req=req.decode( 'utf-8').lower().split( 'rn') #http header 解析req_data=req[ 0].lstrip().rstrip().replace( ' ', '') print(req_data) ifreq_data.find( 'favicon.ico')&- 1: client_s.close() continueelse: iflen(req_data)&= 12: #说明是第一次访问,输入login.htmls_data=login_data else: req_data=req_data.replace( 'get/?', '').replace( 'http/1.1', '') _name=req_data.find( 'name') _pwd=req_data.find( 'pwd') if_name&- 1and_pwd&- 1: #判断是否是用户登录ifreq_data.find(name)&- 1andreq_data.find(pwd)&- 1: s_data=dev_data print( 'Login Success!') else: f=open( 'fail.html', 'r') s_data=f.read() f.close() print( 'Login Fail!') else: #判断是否是控制LED_index=req_data.find( 'led=') if_index&- 1: s_data=dev_data led_val=req_data[_index+ 4:_index+ 6].lstrip().rstrip() print( 'led:',led_val) ifled_val== 'on': led.value( 1) else: led.value( 0) #判断是否是控制电机_index=req_data.find( 'motor=') if_index&- 1: s_data=dev_data motor_val=req_data[_index+ 6:_index+ 8].lstrip().rstrip() print( 'motor_val:',motor_val) ifmotor_val== 'on': motor.value( 1) else: motor.value( 0) print( '-----------') client_s.send(s_data) client_s.close() led_flag.low()f=open( 'device.html', 'r')dev_html=f.read()f.close()f=open( 'login.html', 'r')login_html=f.read()f.close()f=open( 'info.txt', 'r')info=f.read()f.close()name=info.split( ',')[ 0].lstrip().rstrip()pwd=info.split( ',')[ 1].lstrip().rstrip()print( 'name:',name)print( 'pwd:',pwd)myip_=do_connect( 'essid', 'pwd') #家中网络的WIFI名称和密码print(myip_)main(myip_,dev_html,login_html,name,pwd)
login.html登录页面
&html&&head&&title&智能家庭网络 &/title&&metaname="viewport"content="width=device-width, initial-scale=1"/&&styletype="text/css"&h2{ margin-top:4%; margin-bottom:40 }&/style&&/head&&body&&center&&h2&欢迎登录智能家庭网络平台 &/h2&&formaction="/"method="get"accept-charset="utf-8"&&p&用户名: &inputtype="text"name="name"/&&/p&&p&密 码: &inputtype="password"name="pwd"/&&/p&&inputtype="Submit"value="登录"/&&/form&&/center&&/body&&/html&
device.html控制页面
&html&&head&&title&智能家庭网络平台 &/title&&metaname="viewport"content="width=device-width, initial-scale=1"/&&styletype="text/css"&h2{ margin-top:4%; margin-bottom:40 }&/style&&/head&&body&&center&&h2&欢迎使用智能家庭网络-控制平台 &/h2&&formaction="/"method="get"accept-charset="utf-8"&&p&灯光: &inputtype="Submit"value="ON"name="led"/&&inputtype="Submit"value="OFF"name="led"/&&/p&&p&风扇: &inputtype="Submit"value="ON"name="motor"/&&inputtype="Submit"value="OFF"name="motor"/&&/p&&/form&&/center&&/body&&/html&
fail.html登录错误页面(就是把login.html稍做了一下改动)
&html&&head&&title&智能家庭网络 &/title&&metaname="viewport"content="width=device-width, initial-scale=1"/&&styletype="text/css"&h2{ margin-top:4%; margin-bottom:40 }&/style&&/head&&body&&center&&h2&欢迎登录智能家庭网络平台 &/h2&&formaction="/"method="get"accept-charset="utf-8"&&pstyle="color:red"&用户名或密码错误! &/p&&p&用户名: &inputtype="text"name="name"/&&/p&&p&密 码: &inputtype="password"name="pwd"/&&/p&&inputtype="Submit"value="登录"/&&/form&&/center&&/body&&/html&
info.txt这里是用文件存放的用户名和密码(英文逗号分隔),前面是用户名,后面是密码。这里的用户名和密码是用来登录我们智能家居控制平台的。
admin,123456
五.程序下载测试
使用MicroPythonFileUploader工具,将源代码下载到v202中。
工具下载地址:http://tpyboard.com/download/tool/170.html
1、 使用usb数据线将v202接入到电脑,打开设备管理器,查看加载的端口。我的是COM44
※如果驱动安装失败,可以下载CH340的驱动,手动安装。
CH340驱动下载地址:http://tpyboard.com/download/drive/163.html
2、 打开MicroPythonFileUploader选择端口,点击[Open]。
3、 取消[Autorun]的打钩,点击红框的文件夹图标,选择源码,点击[Send]等待发送成功。
4、 将上面的源码文件都下载到v202中,下载完毕后,点击[Run/Reset]就会开始执行代码。
5、 开始运行后,红色框内打印的是我们存放在info.txt里的用户名和密码,这个可以自定义。
6、 下面桃红色框内打印的是我们v202从路由器那里获取到的IP地址,只要打印了IP地址,说明就成功接入网络了。我的v202获取的IP地址是192.168.1.192。
7、 到此,我们的web服务器就搭建完成了。
六.智能家庭网络平台的使用
1、在家庭局域网内,我们可以选用pc或者手机,通过浏览器,打开192.168.1.192就可以看到登录界面。
2、默认用户名admin密码123456,大家可以通过修改info.txt文件来进行修改。
(1)输入错误的用户名和密码会进入错误界面。
(2)输入正确的,进入控制平台。
3、接下来,我们就可以通过网页开控制灯光和小风扇了,看我的实验效果图。
这里,我只是做了一个实例,受时间限制,没有再做更深入的开发。大家可以自己结合自己的创意再深入去做。如果能够通过路由器给tpyboardv202设一个外网Ip,这样就可以从外网进行访问,从而完成外网对家内设备的控制。
原文链接: http://www.eeboard.com/news/scm-2/
搜索爱板网加关注,每日最新的开发板、智能硬件、硬件、活动等信息可以让你一手全掌握。推荐关注!
【微信扫描下图可直接关注】
【上篇】【下篇】
对于希望实现与底层微控制器硬件无关的实时嵌入式应用程序的开发人员,MicroPython是一个有趣、易用的平台。开发人员可以使用MicroPython中提供的标准库编写他们的高级Python脚本,并在“任意...
提到MicroPython,可能大家首先想到的会是Python,那这两者有何联系又有何区别呢?
Python是我们常见的计算机程序设计语言,是一款比较容易上手的脚本语言,主要用于上层应用的开发,但它...
Python的开放、简洁、黏合正符合了现发展阶段对大数据分析、可视化、各种平台程序协作产生了快速的促进作用。自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢...
全球领先的整合单片机、混合信号、模拟器件和闪存专利解决方案的供应商——Microchip Technology Inc.(美国微芯科技公司)近日宣布推出支持硬件加密的CEC1702单片机。由于物联网(IoT)应用持...
虽然Python在国外是一门非常火的语言,在黑客界更是赫赫有名,然而中国的大学却极少开设 Python 课程,故而国内 Python 程序员多属自学。而一个没有MCU编程经验的初学者,要想让芯片跑起来,...
您必须才能发表留言!51单片机的20个实验_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
51单片机的20个实验
&&51单片机的20个实验
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩76页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 单片机最小系统实验 的文章

 

随机推荐