完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
你好,我现在正在和PIC18F25K80一起玩。我有一个PIC芯片在一个面包板和一个液晶显示器连接。但是,我发现两个端口工作,两个端口拒绝运行,请参阅附上的代码。我把原来的LCD程序修改成一个“测试”程序,只是为了测试端口。即闪光灯Hello World程序。我得到的结果是,端口C.B0和B1要么保持在5伏,而其他端口闪烁,要么保持在0V.N.B.txt1&txt2与原始程序相比偏离,不参与该程序。有人知道吗???????在PORTC.B0上的LCD_D4;在PORTC.B0上的LCD_D4;在PORTC.B1上的LCD_D5;在PORTC.B1上的LCD_D6;在PORTC.B2上的LCD_D6;在PORTC.B2上的LCD_D6;在PORTC.B0 B0上的LCD_DD_D4;在PORTC.B0端口C.B0上的LCD_DD_DD_D4;在PORTC.BB0端口LCD.B0上的LCD_DD_DD_DD_D4;在PORTC.BBB6端口LCD.B6端口LCD_DD_DD_DD_DD_DD_DD_DD_DD_D4;SC2_bit;***it LCD_D7_DirectionTRISC3_位;在TRISA7_位;在TRISA7_位;在TRISB6_位;在TRISB6_位;在TRISC4_位;在TRISC4_位;在TRISC4_位;在TRISC4_位;在TRISC LCD-LCD-LCD_EN_EN_方向;在端LCD模块连接器-LCD模块连接schartxtxt1.txt1.[]=//端LCD模块连接器txtxt1.txt1.[] =txt1.[]=“uWDUIT”;char txt2.[]] =char txt2.[]]]]=“我们的孩子”;void main(){Delay_2.{Delay_ms.[]]]=“我们的孩子”;vo1){Delay_ms(500);LCD_D4=1;LCD_D5=1;LCD_D6=1;LCD_D7=1;LCD_RS=1;LCD_EN=1;AlARM=1;Delay_ms(5000);LCD_D4=0;LCD_D5=0;LCD_D6=0;LCD_RS=0;LCD_EN=0;Alarm=0;}
|
|
相关推荐
12个回答
|
|
|
配置设置?更好地写入LATX寄存器,而不是PORTX(如果我正确理解您的代码……)
|
|
|
|
|
|
将波尔塔和PORTC的所有引用分别更改为LATA和LATC。
|
|
|
|
|
|
嗨,我试过上面的修复,见下面的代码,它并没有解决我的问题。总之,所有输出都在C端口上进行,除了RC0和RC1保持在零伏。我已经从两个不同的编译器运行代码,所以它应该意味着编译器错误不是原因。我已经运行了带有断点设置的代码,我可以随意激活那些“工作”。在LATC线路上出现断点。包括<_&xc.h>;包括<_<_&stdio.h>包括<_&stdlib&stdlib.h>包括< pic18f25k80.h>;包括“Helloworld_header_header.h”void main(void){TRISC=0xSC=0x00;/*设置端口C用于输出*/OSCCON=0X76;/*设置端口C*/OSCCON=0X76;同时(1){LATC=0OSCCON=OSCCON=0XON=0XON=0XON=0XON=0X76;(1){{LATC=0x00;}}表11:6数据表中指出,影响这些位的寄存器是:-PORTCxLATCxTRISCxU.Dof,这些寄存器只有TRISCx和U.D需要设置;-TrISCx设置为零,即所有输出。如果端口的其余部分工作,则表明正确设置了该寄存器。影响“开路漏极能力”,并根据配置寄存器中的其余位断开。我想知道我是否拥有一个duff芯片,但这是第二个我试过两个都遇到相同问题的芯片,所以看起来不太可能。非常感谢LesC提供的任何帮助。
|
|
|
|
|
|
不需要这些include
|
|
|
|
|
|
在RC0上没有第二个特性,它是开放式电路。从头文件配置如下,我不能在这里放屏幕截图。高//LF-INTOSC低功率使能位(睡眠期间高功率模式中的LF-INTOSC)pragma配置SOSCSEL=高//SOSC功率选择和模式配置位(选择高功率SOSC电路)pragma配置XINST=ON//扩展指令集(启用)//CONFIG1Hpragma配置FOSC=INTIO2//振荡器(内部RC振荡器)#pragma配置PLLCFG=OFF//PLL x4启用位(禁用)#pragma配置FCMEN=OFF//故障安全时钟监视器(禁用)#pragma配置IESO=OFF//内部外部振荡器切换模式(禁用)//CONFIG2L#pragma配置PWRTEN=OFF//上电定时器(禁用)#pragma config BOREN=OFF//Brown Out Detect(在硬件中禁用,SBOREN禁用)#pragma config BORV=0//Brown-out Reset Vol.bits(3.0V)#pragma config BORPWR=ZPBORMV//BORMV功率电平(选择ZPBORMV而不是BORMV)//CONFIG2H#pragma config WDTEN=OFF//Watchdog Timer(硬件中禁用WDT;SWDTEN位禁用)pragma config WDTPS=1048576//Watchdog Postscaler(1:1048576)//CONFIG3Hpragma config CANMX=PORTB//ECAN Mux位(ECAN TX和RX引脚分别位于RB2和RB3上)pragma config MSSPMSK=MSK7//MSSP地址屏蔽(7:位地址屏蔽模式)#pragma配置MCLRE=OFF//主清除启用(MCLR禁用,RE3启用)//CONFIG4L#pragma配置STVREN=OFF//堆栈溢出重置(禁用)#pragma配置BBSIZ=BB2K//引导块大小(2K字引导块大小)//CONFIG5L#pragma配置CP0=OFF//代码保护00800-01FFF(禁用)#pragma配置CP1#pragma配置CP1=OFF///代码保护02000-03FFF(禁用)//代码保护02000-02000-03FFF(禁用)#pragma配置CP1=OFF//代码保护CP1=OFF///代码保护0200000000000000000000000000000000000000000000000000000000000000000000001FFF(禁用)/\\\\\\\\\\242424配置CPD=OFF//数据EE读取保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)//CONFIG6L#pragma配置WRT0\\#pragma配置WRT0#pr书写保护WRT0#pr表WRT配置WRT0=OFF///表写入保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)//数据EE读取保护(禁用)///表写入保护202020读取保护(禁用)//表写入保护04000-04000-05表WRITE保护06000—07FFF(禁用)//CONT66H-PrAPMA配置文件WRTC=OF//CONFIG。写入保护(禁用)#pragma配置WRTB=OFF///表写入保护启动(禁用)#pragma配置WRTD=OFF//数据EE写保护(禁用)//数据EE写保护(数据EE写保护(禁用)//数据EE写保护(禁用)//数据EE写保护(数据EE写保护(禁用)//CONFIGWWWWWWWWWWWWRTD=OFF//数据EE写写写写保护(禁用)//数据EE写写写写保护(禁用)///CONFIGG7L#pragma配置EBTRGGGGGGGGconfiGGGCOBTR0\#pragma配置EBTR0=OFFed)#pragma config EBTR2=OFF//表读保护04000-05FFF(禁用)#pragma配置EBTR3=OFF//表读保护06000-07FFF(禁用)//CONFIG7H#pragma配置EBTRB=OFF//表读保护引导(禁用)/pragma配置语句应该在项目文件之前包括.//使用ProjecT枚举而不是γ定义ON和OFF/.*时钟频率在这里*//
|
|
|
|
|
|
在PIC18FxK80系列设备上,RC0和RC1与SOSC管脚多路复用,默认情况下不启用它们的I/O端口功能。为了使用这些引脚作为通用I/O引脚,CONFIG1L的SOSSEL位需要是0b10以将SOSC置于数字模式,从而实现RC0和RC1的I/O功能。
|
|
|
|
|
|
SXST必须在XC编译器上关闭:SoSSESEL设置可疑的声音…
|
|
|
|
|
|
是的,如上所述,它应该设置为数字模式#pragma config SOSCSEL=DIG//SOSC电源选择和模式配置位(.(SCLKI)模式)
|
|
|
|
|
|
非常感谢你的帮助,我很感激,我咧嘴笑着说:
|
|
|
|
|
|
你应该张贴你的固定。和/或注意帮助的帖子。
|
|
|
|
|
|
我很高兴
|
|
|
|
|
|
嗨,我有要求发布修复。这是由NJT提供的解决上述问题的解决方案。(下面为方便起见)表11:6误导我,因为它没有提到OngI1L能够影响端口。我用表格来确认,错误地说,我已经设置了所有需要的寄存器。我会给Microchip发送一个提示,建议他们更新这个表,因为它花了我三天的时间才找到问题。谢谢你们的贡献。邮政从NJTOn的PIC18FxK80系列设备,RC0和RC1与SOSC引脚多路复用,它们的I/O端口功能是默认情况下无法启用。为了使用这些引脚作为通用I/O引脚,CONFIG1L的SOSSEL位需要是0b10以将SOSC置于数字模式,从而实现RC0和RC1的I/O功能。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1124浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1098浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
873浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 09:42 , Processed in 1.103724 second(s), Total 94, Slave 77 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2332