14404|32

640

帖子

0

TA的资源

五彩晶圆(初级)

楼主
 

小巧的LPC1114做图象开发板 [复制链接]

    LPC1114到了,相机不在身边,拍不了照。呵呵!

    前面已经我为他设计了一个舞台,该搭建了,让他在上面尽情的发挥。

[ 本帖最后由 zhdphao 于 2010-7-31 17:38 编辑 ]
此帖出自NXP MCU论坛

最新回复

不知道怎么实现LPC1114和OV7660之间的数据传输?传输频率是多少?  详情 回复 发表于 2010-12-7 15:03
点赞 关注
 

回复
举报

4996

帖子

19

TA的资源

裸片初长成(初级)

沙发
 
期待你的分享!!!
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

826

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

期待分享

期待分享
此帖出自NXP MCU论坛
 
 
 

回复

1万

帖子

16

TA的资源

版主

4
 

恩期待分享

此帖出自NXP MCU论坛
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

5
 

还得感谢SOSO姐, 不是她的及时关注还不知道什么时候收到! 呵呵!

现在在画PCB, 想再加摄像头进去,再显示到彩色LCD上,加入动态画面保存功能(保存到SD卡上面)。反正是做开发板,统统加进去吧!

[ 本帖最后由 zhdphao 于 2010-7-31 20:54 编辑 ]
此帖出自NXP MCU论坛
 
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

6
 

  再上正在作的开发板的原理简图(已确定):

[ 本帖最后由 zhdphao 于 2010-7-31 17:31 编辑 ]
此帖出自NXP MCU论坛
 
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

7
 
呵呵!先卖个关子: 等到30楼后继续。:P

[ 本帖最后由 zhdphao 于 2010-7-31 19:33 编辑 ]
此帖出自NXP MCU论坛
 
 
 

回复

1583

帖子

0

TA的资源

五彩晶圆(高级)

8
 
原帖由 zhdphao 于 2010-7-31 19:20 发表
呵呵!先卖个关子: 等到30楼后继续。:P


为了快点看到东西,努力盖楼啊~~~~
此帖出自NXP MCU论坛
 
个人签名
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

9
 
谢谢! 不是想掉大家胃口啊! 只是想看我的选的题目是不是有问题,我自己也顶哈!
此帖出自NXP MCU论坛
 
 
 

回复

2万

帖子

71

TA的资源

管理员

10
 
呵呵 大家多给出出好主意
此帖出自NXP MCU论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

11
 
是处理图像还是保存图像呢。
想学习,但未接触单片机
此帖出自NXP MCU论坛
 
 
 

回复

2955

帖子

0

TA的资源

纯净的硅(初级)

12
 
我帮盖一层楼,好能快点看到楼主的分享啊
此帖出自NXP MCU论坛
 
个人签名不断地学习,才会有创新!
淘宝小店:手机、qq点卡、游戏点卡自动充值 http://shop63727265.taobao.com/
 
 

回复

2641

帖子

0

TA的资源

五彩晶圆(中级)

13
 
用这个级别的单片机做图像处理确实很少见,不过也只能是玩玩,期待分享
此帖出自NXP MCU论坛
 
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

14
 

原帖由 ming0303 于 2010-8-1 20:37 发表 是处理图像还是保存图像呢。想学习,但未接触单片机 [/quote]

[quote]原帖由 fengzhang2002 于 2010-8-2 08:51 发表 用这个级别的单片机做图像处理确实很少见,不过也只能是玩玩,期待分享

 

    把我要实现的功能都转过来,找个理由自己顶一顶贴,好早日能上原理图。呵呵!

 

    驱动2.4寸320*240 TFT 彩色液晶,这个只有用IO口模拟LCD的8位总线,最低需要耗费10个IO。这个并不难,难度系数0.3。

    驱动SD卡,通过SPI接口。并在上面实现FAT文件系统,这个板主已经实现了,所以直接借用。有了板主的例子,这个难度系数为0,呵呵!

    直接读取并在TFT上显示BMP文件,这个难度不大,只需要了解BMP文件结构解析就可以了。我已经做了,方法见我的帖子。这个难度系数为0。

    直接读取并在TFT上显示JPG文件,这个设计霍夫曼解码等等,稍显复杂。不过网上有很多例子可以借鉴,只是占用内存太多,需要作修改才能用。LPC1114只有8K内存,FAT和SD读取需要大约2K的内存,所以JPG解码占用内存必须减少到6K以下。这个并不难,难度系数等于0.1。

    利用2个16位的PWM输出做立体声音频输出,理论上可以实现。目前已实现,难度系数0。

    如果音频输出可行,再做引申:播放WAV文件(如果可以音频输出,难度系数0)。

    驱动摄像头,并实时显示在2.4 TFT彩色液晶上。

    实时监控摄像头画面,如变动超过指定比例则自动记录该画面到SD卡,实现动态画面保存功能。同时可以手动保存摄像头画面(快门)。

 

    软解压MP3文件,这个还没有动手,留给最后做,难度系数0.6。

   

[ 本帖最后由 zhdphao 于 2010-8-4 07:43 编辑 ]
此帖出自NXP MCU论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

15
 

回复 14楼 zhdphao 的帖子

分析得非常透彻,不错,强烈支持,看来我的TFT也还是改用8位算了,否则IO不够用。
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

16
 

原帖由 zhaojun_xf 于 2010-8-4 07:49 发表 分析得非常透彻,不错,强烈支持,看来我的TFT也还是改用8位算了,否则IO不够用。

    看样子凑不起30楼了。不过不要紧,用ARM M0的人现在还很少,就像我我一样需要打开一下知名度。

    我们继续:昨天对比了几种M0、M3的功耗,LPC1114的性能功耗比还是十分理想的,适用于便携、手持等场合。

    又再加入无线功能,芯片选用nRF905。nRF905单片无线收发器是挪威Nordic公司推出的单片射频发射器芯片,工作电压为1.9-3.6V,32引脚QFN封装(5mm×5mm),工作于433/868/915MHz3个ISM频道(可以免费使用)。低频段需要的天线也大,我选915MHz段。

    nRF905可以自动完成处理字头和CRC(循环冗余码校验)的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信,配置非常方便,其功耗非常低,以-10dBm的输出功率发射时电流只有11mA,在接收模式时电流为12.5mA。 nRF905单片无线收发器工作由一个完全集成的频率调制器,一个带解调器的接收器,一个功率放大器,一个晶体震荡器和一个调节器组成。ShockBurst工作模式的特点是自动产生前导码和CRC,可以很容易通过SPI接口进行编程配置。

  nRF905采用Nordic公司的VLSI ShockBurst技术。ShockBurst技术使nRF905能够提供高速的数据传输,而不需要昂贵的高速MCU来进行数据处理/时钟覆盖。通过将与RF协议有关的高速信号处理放到芯片内,nRF905提供给应用的微控制器一个SPI接口,速率由微控制器自己设定的接口速度决定。nRF905通过ShockBurst工作模式在RF以最大速率进行连接时降低数字应用部分的速度来降低在应用中的平均电流消耗。在ShockBurst RX模式中,地址匹配AM和数据准备就绪DR信号通知MCU一个有效的地址和数据包已经各自接收完成。在ShockBurst TX模式中,nRF905自动产生前导码和CRC校验码,数据准备就绪DR信号通知MCU数据传输已经完成。总之,这意味着降低MCU的存储器需求也就是说降低MCU成本,又同时缩短软件开发时间。

  1)、典型ShockBurst TX模式:

  ①、当应用MCU有遥控数据节点时,接收节点的地址TX-address和有效数据TX-payload通过SPI接口传送给nRF905应用协议或MCU设置接口速度;

  ②、MCU设置TRX_CE、TX_EN为高来激活nRF905 ShockBurst传输;

  ③、nRF905 ShockBurst:

   无线系统自动上电

   数据包完成(加前导码和CRC校验码)

   数据包发送(100kbps,GFSK,曼切斯特编码)

  ④、如果AUTO_RETRAN被设置为高nRF905将连续地发送数据包直到TRX_CE被设置为低;

  ⑤、当TRX_CE被设置为低时,nRF905结束数据传输并自动进入standby模式。

  2)、典型ShockBurst RX模式

  ①、通过设置TRX_CE高,TX_EN低来选择ShockBurst模式;

  ②、650us以后,nRF905监测空中的信息;

  ③、当nRF905发现和接收频率相同的载波时,载波检测CD被置高;

  ④、当nRF905接收到有效的地址时,地址匹配AM被置高;

  ⑤、当nRF905接收到有效的数据包(CRC校验正确)时,nRF905去掉前导码、地址和CRC位,数据准备就绪(DR)被置高;

  ⑥、MCU设置TRX_CE低,进入standby模式低电流模式;

  ⑦、MCU可以以合适的速率通过SPI接口读出有效数据;

  ⑧、当所有的有效数据被读出后,nRF905将AM和DR置低;

  ⑨、nRF905将准备进入ShockBurst RX、ShockBurst TX或Powerdown模式。

  3)、掉电模式

  在掉电模式中,nRF905被禁止,电流消耗最小,典型值低于2.5uA。当进入这种模式时,nRF905是不活动的状态。这时候平均电流消耗最小,电池使用寿命最长。在掉电模式中,配置字的内容保持不变。

  4)、STANDBY模式

  Standby模式在保持电流消耗最小的同时保证最短的ShockBurstRX、ShockBurstTX的启动时间。当进入这种模式时,一部分晶体振荡器是活动的。电流消耗取决于晶体振荡器频率,如:当频率为4MHZ时,IDD=12uA;当频率为20MHZ 时,IDD=46uA。如果uPCLK(Pin3)被使能,电流消耗将增加。并且取决于负载电容和频率。在此模式中,配置字的内容保持不变。

 
器件配置

  nRF905的所有配置都通过SPI接口进行。SPI接口由5个寄存器组成,一条SPI指令用来决定进行什么操作。SPI接口只有在掉电模式和Standby模式是激活的。

  1)、状态寄存器(Status-Register)

  寄存器包含数据就绪DR和地址匹配AM状态。

  2)、RF配置寄存器(RF-Configuration Register)

  寄存器包含收发器的频率、输出功率等配置信息。

  3)、发送地址(TX-Address)

  寄存器包含目标器件地址,字节长度由配置寄存器设置。

  4)、发送有效数据(TX-Payload)

  寄存器包含发送的有效ShockBurst数据包数据,字节长度由配置寄存器设置。

  5)、接收有效数据(RX-Payload)

  寄存器包含接收到的有效ShockBurst数据包数据,字节长度由配置寄存器设置。在寄存器中的有效数据由数据准备就绪DR指示。

 
接口

  1)、模式控制接口:

  该接口由 PWR 、TRX_CE、TX_EN组成控制由nRF905组成的高频头的四种工作模式:掉电和 SPI 编程模式;待机和SPI编程模式 ;发射模式;接收模式。

  2)、SPI接口:

  SPI 接口由 CSN、SCK、MOSI以及MISO组成。在配置模式下单片机通过SPI接口配置高频头的工作参数;在发射/接收模式下单片机SPI接口发送和接收数据。

  3)、状态输出接口:

  提供载波检测输出CD,地址匹配输出AM,数据就绪输出DR。

 
外围的RF信息

  1)、晶体规格

  为了实现晶体振荡器低功耗和快速启动时间的解决方案,推荐使用低值晶体负载电容。指定CL=12pF是可以接受的。但是,也可能增大到16pF。指定一个晶体并行相等电容,Co=1.5pF也是很好的,但这样一来会增加晶体自身成本。典型的设定晶体电容Co=1.5pF,指定Co_max=7.0pF。

  2)、外部参考时钟

  一个外部参考时钟如MCU时钟,可以用来代替晶体震荡器。这个时钟信号应该直接连接到XC1引脚,XC2引脚为高阻态。当使用外部时钟代替晶体时钟工作时,始终必须工作在Standby模式以降低电流消耗。如果器件被设置成Standby模式而没有使用外部时钟或晶体时钟,则电流消耗最大可达1mA。

  3)、微处理器输出时钟

  在默认情况下,微处理器提供输出时钟。在Standby模式下提供输出时钟将增加电流消耗。在Standby模式电流消耗取决于频率和外部晶体负载、输出时钟的频率和提供输出时钟的电容负载。

  4)、天线输出

  ANT1和ANT2输出脚给天线提供稳定的RF输出。这两个脚必须有连接到VDD_PA的直流通路,通过RF扼流圈,或者通过天线双极的中心点。在ANT1和ANT2之间的负载阻抗应该在200-700Ω范围内,通过简单的匹配网络或RF变压器(不平衡变压器)可以获得较低的阻抗(例如50Ω)。

 

此帖出自NXP MCU论坛
 
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

17
 

再帖一段C代码,跟着程序熟悉一下怎样让nRF905的工作

  #define uint unsigned int

  #define uchar unsigned char
  //配置口定义//
  sbit TXEN = P2^7;//数字输入TX_EN= 1 TX 模式 TX_EN= 0 RX 模式
  sbit TRX_CE = P2^6;//数字输入使能芯片发射或接收
  sbit PWR = P2^5;//芯片上电
  sbit DR = P2^4;
  sbit MOSI = P2^2;//SPI 输入
  sbit MISO = P2^3;//SPI 输出
  sbit SCK = P2^1;//SPI 时钟
  sbit CSN = P2^0;//SPI 使能
  sbit LED = P0^6;
  //配置口定义//
  //RF寄存器配置//
  unsigned char idata RFConf[11]=
  {
  0x00, //配置命令//
  0x4C, //CH_NO,配置频段在433.2MHZ
  0x0C, //输出功率为10db,不重发,节电为正常模式
  0x44, //地址宽度设置,为4字节
  0x03,0x03, //接收发送有效数据长度为3字节
  0xE5,0xE5,0xE5,0xE5, //接收地址
  0xDE, //CRC充许,16位CRC校验,外部时钟信号使能,16M晶振//UP_CLK输出1MHZ频率
  };
  uchar TxRxBuffer[5];
  uchar temp=0;
  uchar hum=0;
  ///////////延时/////////////////
  void Delay(uint x)
  {
  uint i;
  for(i=0;i<x;i++){
  _nop_();
  }
  }
  ////////////用SPI口写数据至NRF905内//////////
  void SpiWrite(unsigned char b)
  {
  unsigned char i=8;
  while (i--)
  {
  Delay(10);
  SCK=0;
  MOSI=(bit)(b&0x80);
  b<<=1 ;
  Delay(10);
  SCK=1;
  Delay(10);
  SCK=0;
  }
  SCK=0;
  }
  ///////////////from 905 read data////////////////
  unsigned char SpiRead(void)
  {
  register unsigned char i=8;
  unsigned char ddata=0;
  while (i--)
  {
  ddata<<=1 ;
  SCK=0;
  _nop_();_nop_();
  ddata|=MISO;
  SCK=1 ;
  _nop_();_nop_();
  }
  SCK=0;
  return ddata;
  }
  ///////////////接收数据包/////////////////
  void RxPacket(void)
  {
  uchar i;
  i=0;
  while(DR)
  {
  TxRxBuffer = SpiRead();
  i++;
  }
  }
  /*
  ;写发射数据命令:20H
  ;读发射数据命令:21H
  ;写发射地址命令:22H
  ;读发射地址命令:23H
  ;读接收数据命令:24H
  */
  void TxPacket(void)
  {
  PWR=1;
  Delay(66);
  TXEN=1;
  CSN=0;
  SpiWrite(0x22); //写发送地址,后面跟4字节地址//
  SpiWrite(0x17);
  SpiWrite(0x17);
  SpiWrite(0x17);
  SpiWrite(0x17);
  CSN=1;
  _nop_();_nop_();
  CSN=0;
  SpiWrite(0x20); //写发送数据命令,后面跟三字节数据//
  SpiWrite(temp); //发送温度
  SpiWrite(hum); //发送湿度
  SpiWrite(0x03);
  CSN=1;
  _nop_();_nop_();
  TRX_CE=1; //使能发射模式//
  Delay(700); //等带发送完成//
  TRX_CE=0;
  // while(!DR);
  }
  ////////////////等待接收数据包///////////////////
  void Wait_Rec_Packet(void)
  { PWR=1;
  TXEN=0;
  TRX_CE=1;
  while(1)
  {
  if(DR) //数据接收成功
  {
  TRX_CE=0; //如果数据准备好,则进入待机模式,以便SPI口操作
  CSN=0;
  SpiWrite(0x24); //读nRF905所接受到的数据
  RxPacket(); //保存数据
  CSN=1;
  temp=TxRxBuffer[0]+TxRxBuffer[1]+TxRxBuffer[2];
  if(temp==0x06)
  {
  P1=TxRxBuffer[1];
  }
  break;
  }
  }
  }
  ////////////初始化配置寄存器////////////////
  void Ini_System(void)
  {
  uchar i;
  Delay(10000);
  CSN=1;
  SCK=0;
  PWR=1; //进入掉电模式
  TRX_CE=0;
  TXEN=0;
  _nop_();
  CSN=0; //进入SIP模式
  for(i=0;i<11;i++)
  {
  SpiWrite(RFConf); //设置配置寄存器
  }
  CSN=1; //关闭SPI,进入接收状态
  }
  void main(void)
  {
  Ini_System(); //设置配置,并进入接收模式(收)
  PWR=0; //进入掉电模式
  while(1)
  {
  LED=0;
  Wait_Rec_Packet();
  Delay(5530);
  temp=READ_humidity_temperature(1);
  hum=READ_humidity_temperature(0);
  TxPacket( ); //发送数据
  LED=1;
  Delay(530);
  }
  }
此帖出自NXP MCU论坛
 
 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

18
 
nRF905将负责和PC机的无线连接,提供大约48kbps的数据传输。
此帖出自NXP MCU论坛
 
 
 

回复

2万

帖子

71

TA的资源

管理员

19
 

原帖由 zhdphao 于 2010-8-6 08:28 发表     看样子凑不起30楼了。不过不要紧,用ARM M0的人现在还很少,就像我我一样需要打开一下知名度。     我们继续:昨天对比了几种M0、M3的功耗,LPC1114的性能功耗比还是十分理想的 ...

 

哈哈 好喜欢楼主开头说的话

此帖出自NXP MCU论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 

回复

640

帖子

0

TA的资源

五彩晶圆(初级)

20
 

原帖由 soso 于 2010-8-6 09:47 发表   哈哈 好喜欢楼主开头说的话

 

    谢谢!:$

此帖出自NXP MCU论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表