任何人都可以看看我的PIC16F877A代码??

T

thibraani

Guest
下面是这种情况,我的PIC是连接到蓝牙模块。蓝牙模块充当用户tranceiver来控制LED从个人电脑远程。该系统是这样的:

1。用户提示命令从使用超级计算机[按1灯开启时2个LED关]
2。该命令将被发送到蓝牙模块
, 通过蓝牙适配器连接到USB
3。该收发器收到命令[为ASCII 1或2]和发送到事先知情同意
4。石化翻译此命令并执行指令打开或关闭的LED

要连接的蓝牙模块,UART的
, 必须使这个正在建立的TX和知情同意高Rx引脚。蓝牙适配器将发送它接收到的所有PIC的。问题是,LED的未能打开和关闭

, 但7段能够显示每个数目

, 电脑键盘上输入。任何人都可以在那里看看我的编码和帮助我修改??要分配和逻辑高电平基于PIC低并不是一件容易的事。我需要你的帮助。

_________________________________________

#包括<pic.h>

__CONFIG(0x3F32);

#定义秒PORTD / /定义7段作为PORTD
#PORTB的定义导致/ / PORTB的定义为主导

无符号字符1;

无效初始化(无效)/ /初始化子程序

SPBRG = 0x81; / /设置为9600波特率波特率
BRGH = 1;
TXEN = 1;
CREN = 1;
SPEN = 1;
TRISD = 0b00000000; / /设置为输出PORTD
秒= 0b00000000;
TRISB = 0b00000000; / /设置为输出PORTB的
领导= 0b00000000;


无效的显示(无符号字符三)/ /显示在屏幕上的文字

而(TXIF == 0);
TXREG =荤;


无符号字符接收(无效)/ /接收来自PC命令

而(RCIF == 0);
1 = RCREG;
返回;


无效的主要(无效)

init()中;

而(1)/ /等待用户输入字母“X”

1 =接收();
如果(a =='x')的突破;



显示器(W字); / /在屏幕上显示文本
显示器(E级);
显示器(『L');
显示器(的'C');
显示器(O形);
显示器(百万');
显示器(E级);
显示(字符0x0A);
显示(字符0x0D);
显示器(E级);
显示器('东经');
显示器('吨');
显示器('电子');
显示器('R'等);
显示器(0x20);
显示器(的'p');
显示('一');
显示器(氏');
显示器(氏');
显示器(0x20);
显示器('k'按钮);
显示器('电子');
显示器(Y键);
显示(字符0x0A);
显示(字符0x0D);
显示(字符0x0A);
显示(字符0x0D);(

而(1)/ /使用密钥等“fkee”的输入

1 =接收();
如果(a =='氟)

1 =接收();
如果(a =='k'按钮)

1 =接收();
如果(a =='电子')

1 =接收();
如果(a =='电子')破;





显示器(W字); / /在屏幕上显示文本
显示器('魔');
显示('一');
显示器('吨');
显示器(0x20);
显示器('瓦特');
显示器('Ø');
显示器('ü');
显示器('升');
显示器('D'类);
显示器(0x20);
显示器(Y键);
显示器('Ø');
显示器('ü');
显示器(0x20);
显示器('升');
显示器('我');
显示器('k'按钮);
显示器('电子');
显示器(0x20);
显示器('吨');
显示器('Ø');
显示器(0x20);
显示器('D'类);
显示器('Ø');
显示('?');
显示(字符0x0A);
显示(字符0x0D);
显示器(0x5B);
显示器('1');
显示器(0x5D);
显示器(0x20);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0x20);
显示器(O形);
显示器('东经');
显示(字符0x0A);
显示(字符0x0D);
显示器(0x5B);
显示器('2');
显示器(0x5D);
显示器(0x20);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0x20);
显示器(O形);
显示器('氟);
显示器('氟);
显示(字符0x0A);
显示(字符0x0D);
显示(字符0x0A);
显示(字符0x0D);

秒= 0; / / 7 segement显示“0”在其显示器
领导= 0; / / LED关闭

而(1)/ /等待用户输入命令

1 =接收();
如果(a == '1')

显示器(的'C');
显示器(O形);
显示器('东经');
显示器('D'类);
显示器('我');
显示器(『T');
显示器('我');
显示器(O形);
显示器('东经');
显示器(0X3a);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0X20);
显示器(O形);
显示器('东经');
显示(字符0x0A);
显示(字符0x0D);
显示(字符0x0A);
显示(字符0x0D);

秒= 1,0x30,/ / 7段显示数字“1”
领导= 0b11111111; / /率领

显示器(W字); / /在屏幕上显示文本
显示器('魔');
显示('一');
显示器('吨');
显示器(0x20);
显示器('瓦特');
显示器('Ø');
显示器('ü');
显示器('升');
显示器('D'类);
显示器(0x20);
显示器(Y键);
显示器('Ø');
显示器('ü');
显示器(0x20);
显示器('升');
显示器('我');
显示器('k'按钮);
显示器('电子');
显示器(0x20);
显示器('吨');
显示器('Ø');
显示器(0x20);
显示器('D'类);
显示器('Ø');
显示('?');
显示(字符0x0A);
显示(字符0x0D);
显示器(0x5B);
显示器('1');
显示器(0x5D);
显示器(0x20);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0x20);
显示器(O形);
显示器('东经');
显示(字符0x0A);
显示(字符0x0D);
显示器(0x5B);
显示器('2');
显示器(0x5D);
显示器(0x20);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0x20);
显示器(O形);
显示器('氟);
显示器('氟);
显示(字符0x0A);
显示(字符0x0D);
显示(字符0x0A);
显示(字符0x0D);(
1 =接收();
如果(a == '2')

显示器(的'C');
显示器(O形);
显示器('东经');
显示器('D'类);
显示器('我');
显示器(『T');
显示器('我');
显示器(O形);
显示器('东经');
显示器(0X3a);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0X20);
显示器(O形);
显示器('氟);
显示器('氟);
显示(字符0x0A);
显示(字符0x0D);
显示(字符0x0A);
显示(字符0x0D);

秒= 1,0x30,/ / 7段显示数字“2”
领导= 0b00000000; / /导致关闭

显示器(W字); / /在屏幕上显示文本
显示器('魔');
显示('一');
显示器('吨');
显示器(0x20);
显示器('瓦特');
显示器('Ø');
显示器('ü');
显示器('升');
显示器('D'类);
显示器(0x20);
显示器(Y键);
显示器('Ø');
显示器('ü');
显示器(0x20);
显示器('升');
显示器('我');
显示器('k'按钮);
显示器('电子');
显示器(0x20);
显示器('吨');
显示器('Ø');
显示器(0x20);
显示器('D'类);
显示器('Ø');
显示('?');
显示(字符0x0A);
显示(字符0x0D);
显示器(0x5B);
显示器('1');
显示器(0x5D);
显示器(0x20);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0x20);
显示器(O形);
显示器('东经');
显示(字符0x0A);
显示(字符0x0D);
显示器(0x5B);
显示器('2');
显示器(0x5D);
显示器(0x20);
显示器(『L');
显示器('我');
显示器(G组织);
显示器('魔');
显示器(『T');
显示器(0x20);
显示器(O形);
显示器('氟);
显示器('氟);
显示(字符0x0A);
显示(字符0x0D);
显示(字符0x0A);
显示(字符0x0D);)




 
有一些基本的需要告诉我们。这是请给我们您个CKT图的完整信息。并电阻值您已连接到领导。你不能直接驱动液晶显示器的知情同意

 
附上该项目的示意图。LED是PORTB的连接。准确地说,它连接在知情同意的港口PB0<img src="http://images.elektroda.net/100_1192295436_thumb.jpg" border="0" alt="Can anyone look at my PIC16F877A code??" title="任何人都可以看看我的PIC16F877A代码??"/>
 
这是我的第一篇文章/答复
, 我很高兴提供帮助
, 但yninish一些细节上的个CKT诊断没有要求。他特别要求所使用的限制
, 通过LED的电流的电阻值。我不知道对'877但有些图片可以汇/源25毫安。如果这是该'877和大多数LED约10毫安一个470欧姆的电阻的工作应该是可以维持的情况。如果您怀疑买0可能会损害用电压表测量为b1,b2等。关心。

 
其实,我已提出了与LED系列1 1K电阻。问题是,当我在网络上打开,贿赂失败以及其他港口乙生产逻辑高。

因此,可能有一些问题
, 与我的计划。我真的需要我的程序代码在您的意见

 
如果我发现正确,实际上从未达到部分代码
, 您LED闪烁?为了更准确
, 在我看来,你达到只一次
, 然后再见再见...

有多少
, 而(1)您使用的?你觉得这是好节目吗?让我猜...你的背景是汇编语言,对不对?C是不同的,我建议你阅读关于C,来源,btw手。

 
你有一个括号错了地方的情侣
你需要添加两个突破;声明

同时获得高
, 低状态等一变量使用

尝试键入你所需要的定义

这些添加您的标题

这些关键字将成为定义和类型约束

所以可以用在您的类

喜欢
如果(布拉布拉==真)()
否则
, 如果(布拉布拉==假)()
否则
, 如果(布拉布拉== NO)的()
否则
, 如果((布拉布拉==假)&&(富=是))
其他的
等等...

////////////////////////////////
/ /:案例逻辑定义:/ /
////////////////////////////////
#案
#ifndef真
#定义真1
#endif
#ifndef假
#界定虚假0
#endif
#ifndef是
#定义是1
#endif
#ifndef编号
#定义无0
#endif
#ifndef高
#定义高1
#endif
#ifndef低
#定义低0
#endif
#ifndef论
#界定1
#endif
#ifndef关
#定义关闭0
#endif
#ifndef向上
#定义最多1
#endif
#ifndef向下
#定义向下0
#endif
#ifndef UCHAR
#定义UCHAR字符
#endif
#ifndef机组
#定义机组长
#endif
#ifndef位
#定义有点短
#endif
#ifndef SCHAR
#定义SCHAR符号的整型
#endif
#ifndef圣
#定义圣签订长期
#endif
#ifndef浮标
#定义浮标浮
#endif
/////////////////////////////////
/////////////////////////////////

 

Welcome to EDABoard.com

Sponsor

Back
Top