-
不错 学习了
-
楼主给点资料
-
在怀疑芯片很烂之前先怀疑下是不是自己的水平很烂,这个不是针对LZ的,是对很多新手(不专指刚毕业的,刚接触电子设计或者某个新的领域、新的应用都算)
试想:如果STM32很烂,竞争对手早就趁机大做文章了,还会等到新手在这里叫嚣?难道竞争对手的团队水平都不入新手、测试手段和测试设备都不如新手?
虚心,再虚心,不要随便说一个芯片很烂,不可能标称12位的AD,实际性能相当于8位的,ST要是这水平还不早就关门了,还能混到现在?要说相当于11位的话,估计还有人信,说相当于8位的,有些高手笑一下,有些人为是在说梦话
-
那个帖子中午搜到的,现在一下找不到在哪里了。大概是讲ADC设置最高时钟和USB的有冲突,版主在那个帖子里有详细的讨论。
现在不考虑那个冲突问题,请教版主,我这样加工USB和PC通信,实时传输ADC的采样数据,应该没问题吧?多谢
-
有谁需要Altera的IP核,qq57694560,cjfwindy@163.com
-
引用 6 楼 wlyfls 的回复:
第一个问题我不知道,第二个问题肯定是搞黑客工作,我们老师也只是教育我们说不要小看一张图片而已。
哦,楼主你这样一解释,就理解清楚好多了。就是打开一张图片,就像是运行一段代码一样。应该可以实现的。不过我没做过。但是,这样的图片应该会有很多斑点吧,因为和图片数据不融合。。。
-
我和楼主有相同的问题
1楼的回答 我明白了
但是怎么区分地址呢?我的理解是rs485总线不是有两根线吗?一根叫A 一根叫B的话,是不是从机1接到AB上,从机2也接到AB上,那当信号在AB上传输时怎么知道是发给从机1还是从机2呢。。。。。
描述不清楚 请见谅 我主要就是对rs485总线没有概念 不能理解rs485怎么通信。。
-
我刚嵌入式入门,学习!
-
谢谢你啊,,我试试,
同时也希望能得到宇龙上的解决方案.
引用 3 楼 sunrain_hjb 的回复:
http://www.cnblogs.com/we-hjb/archive/2009/09/18/1569731.html
看看这里,有隐藏M8任务栏的相关代码。
-
是没实现这个目录还是因为设置了隐藏所以看不到?
-
你好,楼主能留个邮箱嘛,我有现成的移植好的uc/os以及modbus stack 以及基于modbus的上层应用谢谢,芯片用的是STM32F103E
-
中断服务程序都是自己写的,中断向量也是自己安排的,你在中断服务进入时设置Event,退出时Reset Event,在线程中监测不就OK了?
-
回kyzf:
谢谢提示啊~~
因为这个驱动没有取得MS的认证,所以如果人工安装的话可能对那些警告提示感到头疼。
关于生成exe可执行文件,是个不错的方法,我现在看到有人用批处理程序就搞定了,所以就先按照那个方法先试了一下。。
没找到专业软件生成EXE文件,能提供一个下载的链接或者方法么?谢谢咯~~
另外,“把这个DLL和一些系统文件,用专用的软件人为生成了一个exe”,请问还需要哪些系统文件呢?最后生成的EXE可执行文件会不会很大啊??
-
也就是说 用:
while (TRUE)
{
readBuf = new BYTE[512];
ZeroMemory(readBuf,512);
//读取串口数据
ReadFile(ceSeries->m_hComm, readBuf, willReadLen , &actualReadLen,0);
......
} 复制代码
也读不到数据?
如果是这样,就是你的开发板的串口有问题、
不过,你确认用上面那个程序 在你的板子行吗?
-
做射频的时候单片机可以配430,不冲突
-
學習了很多,感謝。
-
AMS1085CT-2.5是AMS1085的子型号!AMS1085CT-2.5是一款低压差稳压器。封装类型,TO-220(1)
-
帮顶。怀疑代码有了点问题,要不重复定义,要不是指针、数组弄错了。。。。
仅是怀疑。。。
-
想了解一下 我只知道看门狗监视程序运行出错是会产生复位中断这是就是所谓的程序跑飞了 其他的希望大家发表意见 学习学习
-
//贴一个
#include
#include
#define uchar unsigned char
#define uint unsigned int
uchar code welcom[16]={" Welcome! "};
uchar idata timer[16]={" 22:55:33 "};
uchar timecount;
sbit RS=P1^0;
sbit RW=P1^1;
sbit EN=P1^2;
bit timeflag;
void delay(uint time)
{
uint x,y;
for(x=time;x>0;x--)
for(y=112;y>0;y--);
}
bit LcdBusy(void)
{
bit result;
EN = 0;
RS = 0;
RW = 1;
EN = 1;
_nop_();
_nop_();
_nop_();
_nop_();
result=(bit)(P2&0x80);
_nop_();
EN=0;
return result;
}
void WriteData(uchar Data)
{
while(LcdBusy());
RS = 1;
RW = 0;
EN = 0;;
P2 = Data;
_nop_();
EN = 1;
_nop_();
EN = 0;
}
void WriteCom(uchar Com,bit test)
{
if(test)
while(LcdBusy());
RS = 0;
RW = 0;
EN = 0;
P2 = Com;
_nop_();
EN = 1;
_nop_();
EN = 0;
}
void IntiLcd(void)
{
delay(15);
WriteCom(0x38,0);
delay(5);
WriteCom(0x38,0);
delay(5);
WriteCom(0x38,0);
WriteCom(0x38,1);
WriteCom(0x08,1);
/*WriteCom(0x01,1);*/
WriteCom(0x06,1);
WriteCom(0x0c,1);
}
void LcdXY(uchar y,uchar x)
{
uchar addr;
addr=(y-1)*0x40+(x-1);
WriteCom(addr|0x80,1);
}
void DisString(uchar *Matric)
{
uchar i;
for(i=0;i=20)
{
timecount =0;
timeflag =1;
}
}
void Watch(void)
{
if(timeflag)
{
timeflag=0;
if(++timer[11]>=':')
{
timer[11]='0';
if(++timer[10]>='6')
{
timer[10]='0';
if(++timer[8]>=':')
{
timer[8]='0';
if(++timer[7]>='6')
{
timer[7]='0';
if(++timer[5]>=':')
{
timer[5]='0';
timer[4]++;
}
if((timer[5]>='4')&&(timer[4]>='2'))
{
timer[5]='0';
timer[4]='0';
}
}
}
}
}
LcdXY(2,1);
DisString(timer);
}
}
void Inti(void)
{
TMOD = 0x01;
TH0 = (65536-50000)/256;
TL0 = (65536-50000)%256;
EA = 1;
ET0 = 1;
timecount =0;
timeflag =0;
}
int main()
{
Inti();
IntiLcd();
LcdXY(1,1);
DisString(welcom);
LcdXY(2,1);
DisString(timer);
TR0=1;
while(1)
{
Watch();
}
return 0;
}
复制代码