aguardar homepage 2014-10-11T02:47:57+00:00 zk_michael@qq.com 用web去控制硬件 2014-10-06T00:00:00+00:00 aguardar http://aguardar.github.io//wufl 用web去控制硬件--wufl项目

学校的二级工程实践,自己定的题目。之所做这个小项目是为了能够把自己之前所学的知识能够串起来,说的再高大上一点就是希望能够将硬件搬到云端。 这个项目目前来讲只能算是一个原型,因为它只实现了一个功能--在web页面上点亮fpga开发板上的LED灯。

项目整体框架

从宏观上看就两个部分,软件和硬件。 硬件部分采用fpga开发板,配置nios软核,可以理解成原来的电路设计吧,配置的是CPU内核fpga引脚与外设。 软件部分包括nios代码和上位机程序,可以理解成原来的单片机程序和上位机程序。 因为并没有期望能够有多复杂的功能,所以设计的能有多简单就多简单。在硬件上只配置了LED和USB,使开发板通过USB与主机通讯。 软件上采用python+django作为服务端,同时写了一个简单的测试前端。 服务端主要用来处理前端发送的控制请求,然后通过USB端口将请求发送给fpga,比较关键的地方是需要用ctypes去调用USB驱动程序。 最后测试顺利通过。

项目体会

以前觉得这种软硬结合的项目很难搞定,之所以有这种观念是因为跨度大,需要了解各种知识,需要玩转各种IDE。 最终的效果虽然简单,但实现的过程却不简单,中间任何一步如果存在知识上的障碍就很难搞定。

项目思路扩展

其实所谓的扩展就是迭代的过程了。迭代到一定程度就变成一个庞大复杂的系统。 原谅我思路的跳跃性吧,说道复杂系统我想起了蝴蝶效应和宿命论,本质上这两个思想其实都是描述的复杂系统。 人们在研究复杂系统的时候会发现有时候一个微小的变化会引起结果的巨大反差,这就是所谓的蝴蝶效应。 而另一些人却发现无论怎么变化,最终的结局都一个样,这就是作为的宿命论。 这构成了复杂系统的阴阳属性,或者称为复杂系统的0和1 。 哈哈,现在明白为什么计算机世界中0和1可以构成这么复杂的系统了吗?

]]>
BeagleBone Black简介 2014-07-13T00:00:00+00:00 aguardar http://aguardar.github.io//BeagleBoneBlack

BeagleBoneBlack是一个可以在十秒之内加载linux的DIY迷你主板其硬件配置包括1GHz ARM Cortex-A8 处理器,3D图形加速器,一副PRU 32位RISC CPU,2GB ROM,MicroSD卡槽和512MB RAM。同时,Beaglebone Black的接口也相当丰富,包括USB接口、以太网接口、Micro-HDMI接口和两个46针接口。默认的系统是Angstrom Linux

BeagleBone Black使用方法

使用的方法总共有三种:

  • 串口通讯
  • USB模拟的网口通讯(默认地址192.168.7.2)
  • 接上hdmi鼠标键盘直接使用

其中我比较喜欢的方式是USB模拟网口的通讯方式。直接SSH过去即可,默认登录用户名为root,无密码。如果不想使用SSH,那就直接在浏览器中输入192.168.7.2:3000 会出现cloud9的使用界面。如果你对node很熟悉,那么可以很方便的用javascript直接控制开发板开发各种好玩的东西了。如果想安装软件,那么先接上网线,然后使用opkg命令。例如:

opkg update
opkg upgrade
opkg install

官方网站会不定期升级系统,自己留意即可,至于如何更换操作系统,请直接参考官网,思路都大同小异,提取img文件,然后使用官网给的工具烧录到minisd卡中即可。

BeagleBone编程

USB接上之后打开浏览器输入192.168.7.2然后回车,打开的网页中给出了javascript编程控制硬件各个接口的方式,线路连接也给了出来。教程很详细


感谢送我板子的好友

2014-7-13

]]>
hello,word 2014-07-12T00:00:00+00:00 aguardar http://aguardar.github.io//helloblog test page


附一下支持github markdown语法的在线编辑器dillinger.io

2014-7-12

]]>