[论坛疑问]现在是不是不让查看个人空间了?
2023-4-14 19:29 来自 mxdyeah 发布@ 综合讨论
现在是不是不让查看个人空间了?我突然就这样了,不知道是不是我的问题{:4_167:}
STC15F2K60S2真的可以用485下载吗?
2023-4-14 10:34 来自 Cyfd_Zl 发布@ 综合讨论
1.把485复用到3.0和3.1上了,硬件电路参考 STC15 用户手册,采用的是自动控制。按理说应该不用选择 STC-ISP 里面的RS485控制吧(如果仍需要选择,请说明需要选择的控制引脚)
2.断开485芯片,通过TTL下载正常。连接485芯片,通信正常(手动发送单片机握手信息)。
3.用串口助手发送0x7f模拟下载,单片机会发送握手信息,但数据与 TTL下的握手信息偶尔不符。
注:必须将STC-ISP选择为固定波特率,(最低波特率 = 最高波特率),否则检测不到单片机,不知原因。
设置为固定波特率:可能提示 通信超时。可能提示单片机选型错误。没有可能下载成功。
有知道原因的吗?如何才能做到通过485下载?
2.断开485芯片,通过TTL下载正常。连接485芯片,通信正常(手动发送单片机握手信息)。
3.用串口助手发送0x7f模拟下载,单片机会发送握手信息,但数据与 TTL下的握手信息偶尔不符。
注:必须将STC-ISP选择为固定波特率,(最低波特率 = 最高波特率),否则检测不到单片机,不知原因。
设置为固定波特率:可能提示 通信超时。可能提示单片机选型错误。没有可能下载成功。
有知道原因的吗?如何才能做到通过485下载?
STC8A8K64内部上拉上拉电阻如何启用
2023-4-12 20:29 来自 jasondj118 发布@ 综合讨论
大佬们,帮我看下这段芯片内部上拉电阻启用的代码对吗?我用了感觉没有效果
MOV P0M0,#00H
MOV P0M1,#00H
MOV P1M0,#00H
MOV P1M1,#00H
MOV P2M0,#00H
MOV P2M1,#00H
MOV P3M0,#00H
MOV P3M1,#00H
MOV P_SW2,#80H
MOV DPTR,#0FE10H
MOV A,#0FFH
MOVX @DPTR,A
MOV DPTR,#0FE11H
MOV A,#0FFH
MOVX @DPTR,A
MOV DPTR,#0FE12H
MOV A,#0FFH
MOVX @DPTR,A
MOV DPTR,#0FE13H
MOV A,#0FFH
MOVX @DPTR,A
MOV P_SW2,#00H
MOV AUXR,#00H
MOV P0M0,#00H
MOV P0M1,#00H
MOV P1M0,#00H
MOV P1M1,#00H
MOV P2M0,#00H
MOV P2M1,#00H
MOV P3M0,#00H
MOV P3M1,#00H
MOV P_SW2,#80H
MOV DPTR,#0FE10H
MOV A,#0FFH
MOVX @DPTR,A
MOV DPTR,#0FE11H
MOV A,#0FFH
MOVX @DPTR,A
MOV DPTR,#0FE12H
MOV A,#0FFH
MOVX @DPTR,A
MOV DPTR,#0FE13H
MOV A,#0FFH
MOVX @DPTR,A
MOV P_SW2,#00H
MOV AUXR,#00H
老板,后续会出 8G1K28-TSSOP20 吗?
2023-4-12 18:51 来自 tzgok 发布@ 综合讨论
8H1K28-TSSOP20已经出了,但是工作电流不如8G1K低,期待能出:8G1K28-TSSOP20
一箭双雕之USB转双串口莫名其妙的干扰
2023-4-11 13:45 来自 HengTuo 发布@ 综合讨论
一箭双雕之USB转双串口板HEX模式发送数据F1 01 软件却显示发送数据0D 0A
把无线键盘拆下来 就显示正常,是软件收到干扰,还是硬件收到干扰?
7567
7566
开启串口打印功能后单片机没有执行if语句
2023-4-11 10:30 来自 980578873 发布@ 综合讨论
各位大佬,我经常遇到这个问题:在函数while(1)的大循环里面,如果开启串口打印信息功能,定时计时250mS时间到并没有打开绿灯,或者定时计时250mS时间到了打开绿灯但是到后面1050mS到了绿灯并没有关闭。如果关闭串口打印信息功能,一切正常。这是为什么?如果要开启串口打印信息功能同时也要单片机运行程序正常,怎么解决此问题?
while(1)
{
data_0x10=read_data(0x10);//读取充电盒各种状态的寄存器
ST_CH=0x20&data_0x10;//如果芯片在充电状态,ST_CH==0x20
ST_CH_END=0x40&data_0x10;//如果电池充满电,ST_CH_END==0x40
TI=1;
printf("ST_CH_END is 0x%bx\n",ST_CH_END);//串口打印ST_CH_END状态
while(TI==0);
TI=0;
if(open_lid_flag==1)
{
if(oc_lid_led_5ms==50)
PCA输出PWM改了一点地方也可以?
2023-4-10 19:12 来自 MWX 发布@ 综合讨论
范例中
CCAPM0 = 0x42; //PCA模块0为PWM工作模式
PCA_PWM0 = 0x80; //PCA模块0输出6位PWM
CCAP0L = 0x20; //PWM占空比为50%
CCAP0H = 0x20;
//--7位PWM--
CCAPM1 = 0x42; //PCA模块1为PWM工作模式
PCA_PWM1 = 0x40; //PCA模块1输出7位PWM
CCAP1L = 0x20; //PWM占空比为75%
CCAP1H = 0x20;
我变成这样
CCAPM0 = 0x42; //PCA模块0为PWM工作模式
PCA_PWM0 = 0x80; //PCA模块0输出6位PWM
CCAP0L = 0x20; //PWM占空比为50%
CCAP0H = 0x20;
//--7位PWM--
CCAPM1 = 0x42; //PCA模块1为PWM工作模式
PCA_PWM1 = 0x40; //PCA模块1输出7位PWM
CCAP1L = 0x20; //PWM占空比为75%
CCAP1H = 0x20;
我变成这样
关于STC8H8K64U单片机休眠电流问题,请高手解答。
2023-4-10 17:01 来自 jnyyz 发布@ 综合讨论
本帖最后由 jnyyz 于 2023-4-10 17:34 编辑
STC8H8K64U休眠电流不稳定,有时会是0.56uA(正常值),有时是1.7uA左右,同样的程序,同样的硬件,就是飘忽不定,这次加电好了,下次可能又成了1.7uA,差1.14uA电流始终没有找到问题点。初始化代码如下:
#define GpsPowerOn() MGRxd=1;MGTxd=1;GpsPower=0;//FLAGGpsStart=1;
#define GpsPowerOff() GpsPower =1;MGRxd=0;MGTxd=0;//FLAGGpsStart=0;
#define Uart3On() IE2 |= 0x08;
#define Uart3Off() IE2 &= ~0x08;
#define GpsBatOn() GpsBa
STC8H8K64U休眠电流不稳定,有时会是0.56uA(正常值),有时是1.7uA左右,同样的程序,同样的硬件,就是飘忽不定,这次加电好了,下次可能又成了1.7uA,差1.14uA电流始终没有找到问题点。初始化代码如下:
#define GpsPowerOn() MGRxd=1;MGTxd=1;GpsPower=0;//FLAGGpsStart=1;
#define GpsPowerOff() GpsPower =1;MGRxd=0;MGTxd=0;//FLAGGpsStart=0;
#define Uart3On() IE2 |= 0x08;
#define Uart3Off() IE2 &= ~0x08;
#define GpsBatOn() GpsBa
8G2K32S4-LQFP32和8G2K64S4-LQFP32,复位时间差别太大?
2023-4-7 18:21 来自 tzgok 发布@ 综合讨论
8G2K32S4-LQFP32和8G2K64S4-LQFP32,同样的配置文件和代码文件,为何32k上电复位时间15ms,而64k上电复位时间长达30ms,,他们只是flash和io不同,为何会这样?
浮点数如何取小数点后两位
2023-4-7 18:10 来自 980578873 发布@ 综合讨论
float a;
a=1.0/3.0;
//我只想要0.33的结果,仅获取小数点后两位,请教如何获取小数点后两位的数据,小数点后两位往后的数据不要,谢谢
a=1.0/3.0;
//我只想要0.33的结果,仅获取小数点后两位,请教如何获取小数点后两位的数据,小数点后两位往后的数据不要,谢谢
请教:STC32G12K128 操作 EMP240T100C5N 问题?
2023-4-7 14:08 来自 qlw_cq 发布@ 综合讨论
STC32G12K128 操作 EMP240T100C5N 问题?
//==硬件定义==
sbit AD_BUSY =P3^3; //INT1中断输入 AD转换忙信号 0=转换结束 1=转换中
sbit E240_CS =P7^5; //CS片选
sbit E240_RS =P4^5; //RS数据/指令
sbit E240_RD =P4^4; //RD读
sbit E240_WR =P4^2; //WR写
//#define E240_BUS_H P2 //数据端口P0--0x80,P1=0x90,P2=
//==硬件定义==
sbit AD_BUSY =P3^3; //INT1中断输入 AD转换忙信号 0=转换结束 1=转换中
sbit E240_CS =P7^5; //CS片选
sbit E240_RS =P4^5; //RS数据/指令
sbit E240_RD =P4^4; //RD读
sbit E240_WR =P4^2; //WR写
//#define E240_BUS_H P2 //数据端口P0--0x80,P1=0x90,P2=
尝试做一块电路板,烧掉了。
2023-4-7 00:09 来自 jbl3010 发布@ 综合讨论
STC32G12K123-LQFP64
VCC -> USB 5V
GND -> USB GND
D+接 -> 22R -> USB白线
D-接 -> 22R -> USB蓝线
P10 <- LED <- 5.1K <- 5V
P32按说明接接了个开关
7315
插上USB后LED闪烁,GND脚冒烟。
怀疑试引脚连锡,然后我又做了一块,通电后LED闪烁,然后马上断电,VCC换了3.3v电源并加了保险丝,USB的GND和5V不接,打开3.3v电源后灯不闪了,但是按P32上电后也没反应,想起来试GND没接,没有信号,就把GND连上,然后LED开始又规律试闪烁(一长一短),是不是又烧掉了?
7316
现在官网下载的数据手册pdf文件,都不给复制内容了吗?
2023-4-4 19:10 来自 网老四 发布@ 综合讨论
多年前下载的STC芯片数据手册pdf文档,是可以复制其中的文本的,拷贝部分文档和代码非常方便.
但现在下载的手册pdf文档貌似设置了权限,不给拷贝内容了,不知道STC这么干是出于什么原因?
如果没有特别需求,建议还是放开这个权限吧.
但现在下载的手册pdf文档貌似设置了权限,不给拷贝内容了,不知道STC这么干是出于什么原因?
如果没有特别需求,建议还是放开这个权限吧.
用STC8G1K08做了个单键开关
2023-4-3 16:31 来自 xinzui 发布@ 综合讨论
本帖最后由 xinzui 于 2023-4-3 16:37 编辑
#include "Stc8g.h"
#include "intrins.h"
#include "String.h"
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
#define FOSC 24000000UL
#define BRT1 (65536 - FOSC / 4 / 19200)
#define BRT2 (65536 - FOSC / 4 / 115200)
sbit IN = P5^4;
sbit OUT = P3^3;
bit IN_Check = 0;
uchar xdata Uart_RST = 0;
uint xdata Time_Base = 0;
uint xdata Time_SS = 0;
void SetIO()
{
/*---------------I/O 配置----------
#include "Stc8g.h"
#include "intrins.h"
#include "String.h"
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
#define FOSC 24000000UL
#define BRT1 (65536 - FOSC / 4 / 19200)
#define BRT2 (65536 - FOSC / 4 / 115200)
sbit IN = P5^4;
sbit OUT = P3^3;
bit IN_Check = 0;
uchar xdata Uart_RST = 0;
uint xdata Time_Base = 0;
uint xdata Time_SS = 0;
void SetIO()
{
/*---------------I/O 配置----------
STC8H单片机进入掉电模式后功耗
2023-4-1 15:56 来自 980578873 发布@ 综合讨论
调试好几天了,单片机进入掉电模式后功耗高达75uA,单片机供电接单节锂电电池供电,原理图如下同步也挂在附件处。简单的测试代码如下,求助各位大佬帮忙看下是哪里有问题,谢谢。
#include<stc8h.h>
#include<intrins.h>
void gpio_init()
{
P1M0=0x00;
P1M1=0x00;
P3M0=0x00;
P3M1=0x00;
P5M0=0x00;
P5M1=0x00;
}
void gpio_pd()
{
P1M0 = 0x00;
P1M1 = 0x0d;
P3M0 = 0x00;
P3M1 = 0x40;
P5M0 = 0x00;
P5M1 = 0x00;
}
void main()
{
gpio_init();
while(1)
求助,如何使用发布项目功能限制程序烧录次数
2023-4-1 14:17 来自 sylar.z 发布@ 综合讨论
实测
1.Link1D和U8W,直接使用STC-ISP下载程序,脱机功能正常,限制烧录次数正常。
2.使用发布项目,使能脱机烧录后。
6875
配合Link1D使用脱机烧录,Link1D直接挂了,需要重新设置主控芯片才能恢复正常。
配合U8W使用脱机烧录,可能正常下载并用于烧录程序,但次数限制功能无效。
1.Link1D和U8W,直接使用STC-ISP下载程序,脱机功能正常,限制烧录次数正常。
2.使用发布项目,使能脱机烧录后。
6875
配合Link1D使用脱机烧录,Link1D直接挂了,需要重新设置主控芯片才能恢复正常。
配合U8W使用脱机烧录,可能正常下载并用于烧录程序,但次数限制功能无效。