158675811

    1. 刚刚学画PCB,大虾们给点意见,谢谢 58/18072 stm32/stm8 2011-02-27
                                       覆铜
    2. stm8有没有书籍? 19/8785 stm32/stm8 2010-10-08
                                       强烈支持,让STM8更普及
    3.                                  oo
    4. 无线数据通信协议制定 5/3728 嵌入式系统 2010-06-22
      谢谢了,这个工作主要是测试,看什么值最合适。
    5. 关于触摸屏跳点问题 56/39891 嵌入式系统 2010-06-13
          我也刚遇到过这样的问题,对软键盘,现在这种情况还暂能接受。你要是在这样的屏上想搞手写输入法,根本不可能实现!     1、就像veabol所说的,和硬件有关。触摸屏和按键一样,也有抖动,本来:按下——>多次正确定时采样——>一次可能错误的采样——>抬起;但是经打印提示发现真实的情况是:按下——>多次正确的定时采样——>一次可能错误的采样——>抬起——>按下——>一次错误的定时采样——>抬起(抖动)。      其中:一次可能错误的采样:触屏抬起时正在定时中断中进行采样而获得;            一次错误的定时采样:因为抖动读到的无效值——原来出现的跳点就是这个原因。     上面的论述楼主可通过DdsiTouchPanelGetPoint函数中打印输出验证;          2、对上面的情况,在硬件不能修改的情况下,主要还得软件滤波,其中enumTouchPanelSampleFlags这个结构体很重要,通过它可将坐标值反馈给MDD无效;      3、因为我是一直一个手写输入软件,主要是进行了下面修正:         1)为使书写线条更平滑,提高定时采样频率,减少采样点数,每次采样SAMPLECOUNT = 8个点;         2)优化算法:将每次定时中断采样得到的8个点,先进行排序,再分别扔掉最小和最大的两个点,取  均值得到坐标;         3)滤除一次可能错误的采样:排序后相邻两个坐标值求差后和参考值(参考值:正常书写速度两次采样之间的坐标相差最大值)求差,相差大于参考值的滤除,但该算法还需经过大量实验验证,来获取最合适的参考值;         4)滤除一次错误的定时采样:在正常抬起后设全局标志,而滤除后续的抖动采样,利用enumTouchPanelSampleFlags结构体返回给MDD层无效标志。    
      引用 8 楼 veabol 的回复: 记得你所说的这个情况。 硬件上的问题可能性最大,我们有在使用中发现某些不好的屏,放在那里,都不用调什么软键盘就能看到屏幕一直有响应,就像是有东西在按,实际上是和屏有关,触摸屏安装时边缘压得太紧也会导致这个问题,松松现象就会有很大改观。 要从软件上解决的话似乎只能是多采样过滤了。
    6. ST有没有考虑过推出一套图形库 7/4964 stm32/stm8 2010-06-09
                                       咱不能落后TI啊
    7.                                  呵呵,超小型消耗不少成本。
    8. wince下dll路径问题 7/5636 WindowsCE 2010-06-07
      在bib 里面 注上NK, 打包进 windows目录, 程序加载的时候会自动找windows 目录下的dll文件。
    9. 如何下手Timer输入捕获遥控红外信号 21/8136 stm32/stm8 2010-04-13
                                         固件库在哪?哪有下的?(F101R8) :)
    10. wince 中断流程? 9/4380 WindowsCE 2010-04-12
      InterruptDisable?
    11. 引用 12 楼 veabol 的回复: \PUBLIC\COMMON\OAK\DRIVERS\USBFN\CLASS\STORAGE\TRANSPORT\BOT 这里应该是没判断是否multi-bin,且都能够正常工作
      --> extern "C" DWORD Init(     LPCTSTR pszActiveKey     ) {     DWORD dwErr = UfnInitializeInterface(pszActiveKey, &g_hDevice,         &g_ufnFuncs, &g_pvInterface);     if (dwErr == ERROR_SUCCESS) { -->        dwErr = BOT_InternalInit(pszActiveKey); (bot.cpp)-->// Initialize the Bulk-Only Transport layer. DWORD BOT_InternalInit(     LPCTSTR         pszActiveKey     ) { _tcsncpy(g_szActiveKey, pszActiveKey, dim(g_szActiveKey)); bot.cpp  -->// Process a device event. static BOOL WINAPI BOT_DeviceNotify(     PVOID   pvNotifyParameter,     DWORD   dwMsg,     DWORD   dwParam     ) ... -->                case UFN_ATTACH: {                     DEBUGCHK(!g_fStoreOpened);                     DWORD dwRet = STORE_Init(g_szActiveKey); -->(block.cpp)STORE_Init() Initialize SCSI-2 direct-access device emulator -->OpenDeviceKey(pszActiveKey); --> g_hStore = OpenStore(g_szDeviceName);复制代码 看了那驱动, 不知道那参数LPCTSTR pszActiveKey 上层到底传了什么进去
    12. 关于CC2430芯片应用的问题! 4/2275 嵌入式系统 2010-04-08
      他有三种芯片的 32 64 128 看看你芯片上写的是多少?是不是F128?
    13. mark
    14. DM9000传输速率问题 50/15191 嵌入式系统 2010-01-07
      引用 20 楼 ljdtj 的回复: 帮顶。 Ricky_hu大哥的问题中个人感觉主要得看NdisMRegisterInterrupt()函数的实现。
      谢谢帮顶。 这个函数是个系统API,看不到源码,帮助文档是这样说的: This function sets up a mapping between an NIC driver's MiniportISR and MiniportHandleInterrupt functions, already registered with NdisMRegisterMiniport, and the bus-relative vector and level on which its NIC interrupts. 看上去也不确定到底是map硬件中断还是NDIS的软件中断。
    15. CE串口接收数据不全 32/9490 嵌入式系统 2009-12-09
      现在目前测试就用PC的串口调试工具给ce发数据,wince 那头的程序接收就老是不够,那CE那头的程序 我改用什么方式去接收呢,需要哪些参数的设置要注意吗
    16. STM32复读机DIY活动开始报名啦! 8/4257 stm32/stm8 2009-12-08
      现已进入到各模块的功能讨论阶段,欢迎大家参与。 下载 (5.42 KB) 2009-12-8 17:49 http://www.embcom.net/forum-50-1.html
    17. 基于80c51单片机倒计时定时器的毕业论文 10/5905 嵌入式系统 2009-11-28
      刚刚做的一个计时器的练习,供你参考。 /* 题目:采用定时器中断进行每隔一秒计数 时间:2009-11-28 作者:wbx 简述:                 (1)设置定时器工作模式为0x01为16位定时器模式 TMOD = 0x01;               (2)开总中断EA使其为1                 (3)设置TH0、TL0的内容,填充数值到其中                 (3)开总中断EA = 1;                 (4)设置ET0 = 1;打开定时器中断                 (5)TR0 = 1; 启动定时器0                 (6)进行计数,且将第一个LED进行显示 */ #include code unsigned char tab[]=                         {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};   unsigned int n = 0; unsigned int count = 0; unsigned char showLed = 0xff; void delay(unsigned int iTime) {   while(--iTime); } //定时器中断函数 void TimerFunction() interrupt 1 {         TH0 = (65535 - 50000) / 256;         TL0 = (65535 - 50000) % 256;         n++; } void InitTimer() {         //定时器中断的一些初始化参数         TMOD = 0x01;         TH0  = (65535 - 50000) / 256;         TL0  = (65535 - 50000) % 256;         EA   = 1;         ET0  = 1;         TR0  = 1; } //数码管显示计数函数 void ShowCount() {           //百位           P0 = tab[count/100];           P2 = 0;           delay(800);           //十位           P0 = tab[(count - (count/100)*100 )/10];           P2 = 1;           delay(800);                      //个位           P0 = tab[(count - (count/100)*100 )%10];           P2 = 2;           delay(800);         } void main() {         InitTimer();//初始化定时器         while(1)         {           ShowCount();//采用数码管进行显示           if (n>=20)  //如果达到 20*50000(计数器设置的初始值)=1000000微妙=1秒则进行处理如下代码           {                 if (showLed == 0xfe )                  showLed = 0xff;                 else                  showLed = 0xfe;                                   P1 = showLed;                                  n = 0;                 count++;           }           if (count>=999) count = 0;         } } 复制代码
    18. 求教,怎样提高串口响应速度? 31/7381 嵌入式系统 2009-11-25
      引用 19 楼 zhaomohan 的回复: 我也同样的问题,我是尽量减少线程数 ,提高线程优先级做的
      线程数不好减少,一个串口也就对应一个接收线程。 楼上你做的线程优先级设置多少,速度提高了多少呢?
    19. stm8s求助! 16/4806 stm32/stm8 2009-11-21
                                       不会吧,全局变量在中断中不能用?
    20. Cosmic 10/4937 stm32/stm8 2009-11-19
                                       也可能是你没有设置对DEBUG TOOLS的原因。。。

最近访客

< 1/1 >

统计信息

已有93人来访过

  • 芯积分:--
  • 好友:--
  • 主题:7
  • 回复:53

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言