• 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
返回

电子发烧友 电子发烧友

  • 全文搜索
    • 全文搜索
    • 标题搜索
  • 全部时间
    • 全部时间
    • 1小时内
    • 1天内
    • 1周内
    • 1个月内
  • 默认排序
    • 默认排序
    • 按时间排序
  • 全部板块
    • 全部板块
大家还在搜
  • 如何将天线安装在飞机上

    有人可以发布吉普天线示例,也可以将天线安装在飞机上。 以上来自于谷歌翻译 以下为原文Can someone post the jeep antenna example and also example consisting mounting an antenna on an aircraft.

    2019-07-22 13:27

  • msp430:不明白我设计的1602与按键程序字母为什么有空格

    `/********************************************************************//DM430-L型开发板控制1602液晶模块显示测试程序,显示欢迎信息//直接将1602插入1602接口即可,正面朝内,位于主板上方1x16接口//注意选择液晶的电源,位于电位器附近,可选5V或3.3V,根据液晶电压进行选择,默认5V//调试环境:EW430 V5.30//作者:www.avrgcc.com//时间:2014.03.03//效果://按键1:显示:hello world! Good Luck!www.goole.com//按键2:显示: Good Luck!www.goole.com//按键3:显示: www.goole.com********************************************************************/#include <msp430x14x.h>#include "Config.h"uchar key;//*************************************************************************//初始化IO口子程序//*************************************************************************void Port_init(){P4SEL = 0x00;P4DIR = 0xFF; //数据口输出模式P5SEL = 0x00;P5DIR|= BIT1 + BIT6 + BIT7;//控制口设置为输出模式}//***********************************************************************//显示屏命令写入函数//***********************************************************************void LCD_write_com(unsigned char com) {RS_CLR;RW_CLR;EN_SET;DataPort = com;//命令写入端口delay_ms(5);EN_CLR;}//***********************************************************************//显示屏数据写入函数//***********************************************************************void LCD_write_data(unsigned char data) {RS_SET;RW_CLR;EN_SET;DataPort = data; //数据写入端口delay_ms(5);EN_CLR;}//***********************************************************************//显示屏清空显示//***********************************************************************void LCD_clear(void) {LCD_write_com(0x01);//清屏幕显示delay_ms(5);}//***********************************************************************//显示屏字符串写入函数//***********************************************************************void LCD_write_str(unsigned char x,unsigned char y,unsigned char *s) { if (y == 0) { LCD_write_com(0x80 + x);//第一行显示 } else { LCD_write_com(0xC0 + x);//第二行显示 } while (*s) { LCD_write_data( *s); s ++; }}//***********************************************************************//显示屏单字符写入函数//***********************************************************************void LCD_write_char(unsigned char x,unsigned char y,unsigned char data) { if (y == 0) { LCD_write_com(0x80 + x);//第一行显示 } else { LCD_write_com(0xC0 + x);//第二行显示 } LCD_write_data( data);}//***********************************************************************//显示屏初始化函数(复位)//***********************************************************************void LCD_init(void) { LCD_write_com(0x38);//显示模式设置 delay_ms(50); LCD_write_com(0x08);//显示关闭 delay_ms(50); LCD_write_com(0x01);//显示清屏 delay_ms(50); LCD_write_com(0x06);//显示光标移动设置 delay_ms(50); LCD_write_com(0x0C);//显示开及光标设置 delay_ms(50);}//********************************************//显示屏初始化函数//********************************************void first_display(void)//ex1显示{LCD_write_str(0,0,"Good Luck!");}void second_display(void)//ex2显示{ uchar i,*p;//i控制第几行显示i = 1;p = "www.goole.com";while (*p) {LCD_write_char(i,0,*p);i ++;p ++;delay_ms(100);//延时100ms }}void third_display(void) //ex3显示{uchar j,*q;j = 1;q ="hello world!";//q = "564654";while (*q){LCD_write_char(j,1,*q);j ++;//j控制第几行显示q ++;delay_ms(100);}}//**********************************************************************//键盘扫描子程序,采用逐键扫描的方式//**********************************************************************uchar Key_Scan(void) {uchar key_check;uchar key_checkin;key_checkin=KeyPort; //读取IO口状态,判断是否有键按下key_checkin&= 0x0F; //读取IO口状态,判断是否有键按下if(key_checkin!=0x0F)//IO口值发生变化则表示有键按下 {delay_ms(20);//键盘消抖,延时20MSkey_checkin=KeyPort;if(key_checkin!=0x1F){ key_check=KeyPort; switch (key_check & 0x0F){case 0x0E:key=1;break;case 0x0D:key=2;break;case 0x0B:key=3;break; case 0x07:key=4;break;}}}else{key=0xFF;}return key;} //***********************************************************************//键值显示程序//***********************************************************************void LCD_DisplayKey(uchar keynum){ LCD_write_char(0x0e,1,0x30+keynum);}void main(void){WDT_Init(); //看门狗设置Clock_Init();//系统时钟设置Port_init();//系统初始化,设置IO口属性delay_ms(100); //延时100msLCD_init(); //液晶参数初始化设置LCD_clear(); while(1) {// LCD_clear();此处写这句会花屏Key_Scan();//键盘扫描,看是否有按键按下if(key!=0xff) //如果有按键按下,则显示该按键键值1~4{{switch(key){ // case 1: first_display();//给不同的键赋键值// case 2: third_display();//给不同的键赋键值 //delay_ms(250);case 3:second_display();//break;//给不同的键赋键值delay_ms(250); //Key_Scan(); } } }else{//LED=key;//没有按键的时候显示上次的键值} } }`

    2015-03-13 17:48

  • 如何从安全的角度看自动驾驶

    从安全的角度看自动驾驶

    2021-01-25 06:42

  • 如何设计连网系统的安全防护?

    理想的嵌入式软件一向兼具安全和防护设计。然而,“连网”给医疗、自动驾驶和物联网(IoT)设备等安全关键的应用中,带来了无法容忍程度的安全漏洞。

    2019-10-21 07:31