- 博客(72)
- 资源 (15)
- 收藏
- 关注
原创 不吐不舒服斯基,记一下VC6的编译出错问题 unexpected end of file found
今天下午在改一个程序,加了几句代码之后编译一下,报了错误:报了错:fatal error C1004: unexpected end of file found根据经验看是少了大括号之类的,仔细看了下好像也没有少,看了至少五六遍,没有少啊,加入的代码移了位置导致的?各种换位置验证。搞了大概有一个小时了(其实没有,只是你知道在这种情况下好像感觉搞了很久)最后一行一行去删掉编译,我真的 很庆幸程序不是很大,编译时间不需要太久,要不真的想骂死Microsoft VC6.0的工程师的心都有了。
2021-02-10 16:18:31 1493
原创 sigslot 库的用法
这里还是网友的一个经典例子,light和switch例子#include <iostream>#include "sigslot.h"class CSwitch{public: sigslot::signal0<> m_clicked;};class CLight:public sigslot::has_slots<>{public: CLight(bool s) { m_b_state = s; DisplayState(); }.
2021-01-25 03:55:33 466
原创 GD32 JTDI脚的复用问题
项目上有用到JTDI这个脚,复用做GPIO当时没有注意,直接用做了GPIO,一直无法控制这个Pin最后看了SPEC,发现这个默认是JTDI脚Default JTDI如果要用做GPIO的话(也就是PA15)的话要用REMAP的方式,这个顺序不要变,之所以这么说因为有网友在STM32上验证说:必须先打开时钟再Disable才可以 rcu_periph_clock_enable(RCU_AF); rcu_periph_clock_enable(RCU_GPIOA); gpi.
2021-01-21 11:58:14 2424 6
原创 GD32 ADC检测电压
GD32的参考电压在规格书上没有查到,但是由于GD32 和STM32的“某种关系“。。。STM32 的内部参考电压是1.2V,所以GD32的可以想象也是1.2V。(最终通过计算发现确实应该是1.2V)
2021-01-21 11:46:21 8888
原创 OninitDialog和OnCreate
如果你想在窗口创建的时候,指定哪些控件显示,哪些控件不显示,那么选择重写OninitDialog,它是CDialog的成员函数CDialog::OnInitDialogMSDN示例代码:BOOL CSimpleDlg::OnInitDialog(){ CDialog::OnInitDialog(); // TODO: Add extra initialization here m_cMyEdit.SetWindowText(_T("My Name")); // Initia.
2021-01-12 22:34:56 421
原创 MFC用户线程的创建以及退出
公司的生产测试工具用了N多年了。N多年的是多少年?不知道是不是现在的一些小同学还不知道VC6.0(还不知道可能不妥,仅仅调侃,无意冒犯,应该说是没用过),生产测试工具当时还是用VC6.0开发的,感觉这和现在去打仗用的还是清朝的“神威无敌大将军”一样。所以,我这个起步VC6.0,但是又半路出家的程序猿再恶补一下当年丢下的东西。工具的UI和功能其实都很简单,但是要优化的地方也是很多。今天只说一下涉及到UI线程也就是界面线程部分,因为真正的测试工具的功能比多,这里仅仅用demo的方式记录一下自己恶补的一些
2021-01-11 16:47:42 774 6
原创 如何确认目前的你所用的MYSQL数据库的引擎
如何确认目前的你所用的MYSQL数据库的引擎看你的mysql现在已提供什么存储引擎:mysql> show engines;看你的mysql当前默认的存储引擎:mysql> show variables like '%storage_engine%';你要看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎):mysql> show create table 表名;mysql> show variables like '%sto...
2020-12-11 18:02:55 144
原创 将中断向量表定位到RAM中,从RAM中引导执行中断服务
最近在解决一个问题,看到一篇代码,将中断向量表定位到RAM中,代码所在的文章在这里:https://www.silabs.com/community/mcu/32-bit/knowledge-base.entry.html/2017/05/09/emu_e110_-_potential-i2Pn大家都知道,MCU的中断向量表通常是在flash的0x00000000地址,这一点从你编译...
2020-04-27 11:53:05 4534
原创 μcos-II的任务调度
看到了一位网友的博客,感觉说的比较好,就Copy过来了主要是之前知道任务调度是调用OS_Sched,但是没有看到这个函数的具体实现,或者说看过这个实现没有意识到是利用软中断来对当前任务做现场保存的。这里对接上了,昨天晚上还嘀咕着是不是这么做的,看来果然是啊。//任务调度//uCOS-II总是运行进入就绪态任务中优先级最高的那一个。确定哪个任务优先级最高,下面该哪个任务运行了...
2020-03-27 09:51:15 557
原创 MCU 跳入到SystemInit之后就不往下走了
刚在测试一个USB的小例子的时候,下载好了之后,调试发现跑到startup_gd32e10x.s的SystemInit之后就不动了。;/* reset Handler */Reset_Handler PROC EXPORT Reset_Handler [WEAK] IMPORT...
2020-03-14 17:46:41 1485
原创 system_gd32e10x.c分析
/*! \brief setup the microcontroller system, initialize the system \param[in] none \param[out] none \retval none*/void SystemInit (void){ /* FPU settings */ /* 如果要使用户...
2020-03-14 14:00:49 2880
原创 SPI + DMA
说一说DMA是什么东西,DMA本身的意思是Direct Memory Access,直接存取访问,可以看到这只是一种存取方式,或者说读写方式,或是直白点来说,就是直接读取,说的太直白了,感觉这个DMA这个词在脑子里感觉有点SB了,就这么一个破烂玩意儿起这个这个类似遇到DNA一样的玩意儿。直接存取或者直接读取写入什么呢?当然是数据了,从哪里读,或者往哪里写呢?这个问题好,后面会说到读取的位置...
2020-03-08 21:58:45 9715 2
原创 SPI Flash读取操作
今天看到有人在问SPI flash读取数据的方法,为什么这样读取?先给出一个函数,SPI的读取函数:/*! \brief read a block of data from the flash \param[in] pbuffer: pointer to the buffer that receives the data read from the flash...
2020-03-06 21:04:36 5748 12
原创 GD32 starup_gd32e10x.s分析
;/*!; \file startup_gd32e10x.s; \brief start up file;; \version 2017-12-26, V1.0.0, firmware for GD32E10x;*/;;/*; Copyright (c) 2017, GigaDevice Semiconductor Inc.;; ...
2020-03-05 14:43:15 1068
原创 keil error:#8:missing closing quote 处理
在KEIL中Options for Target 'Flash' -> C/C++ -> Misc Controls添加“--locale=english”。原因:MDK5采用UTF-8,提示很多个这样的error:#8:missing closing quote 的错误信息。提供以下几种方式解决:第一种: 把报错提示的文件(包括.c和对应.h)用Notep...
2020-02-14 10:37:26 953
原创 python 获取 指定文件下的所有文件名的绝对路径
import osresult = []def get_all(path): dir_list = os.listdir(path) for i in dir_list: sub_dir = os.path.join(path,i) if os.path.isdir(sub_dir): get_all(sub_dir)...
2019-12-31 10:49:34 2312
原创 Python使用FPDF导出字体 widths array
新建FontDump工程,import FPDF库。File ->Setting->Projcet:FontDump->Projcet Interpreter->Double click pip 新建FontDump.py文件,导入库FPDF 怎么知道FPDF的所有函数或者说方法呢?看下刚刚下周的库到我们的工程目录下D:\Python\FontDump\env\Lib\...
2019-12-07 17:43:20 731
原创 libharu-RELEASE_2_3_0编译
下载最新的libharu :http://libharu.org/ 网址贴下,可以去下载最新的版本,我这里是2_3_0的版本; 编译libharu要用到zlib和libpng,所以我也从对应的官网上下载:zlib(http://www.zlib.net/),libpng(http://www.libpng.org/pub/png/libpng.html) 先编译zlib,在zlib-1.2.1...
2019-12-05 09:27:05 728
原创 zlib解压 被压缩的PDF(关键字FlateDecode)
PDF被压缩了,但从网上看这个压缩算法就是zlib的压缩算法,下面的乱码就是压缩导致的乱码,现在需要把这些乱码复原%PDF-1.7%溷弦4 0 obj<</Length 3 0 R/Filter/FlateDecode>>streamx渆QMK聾}&跉MIb郦Q鰳娵R刍??焱zR<?|3狣B6?颿f?滕,鞃?珈毵辊纡拶迨鷚#Ef? B?]蔑...
2019-12-04 17:29:49 4570
原创 Stack Overflow无法提交问题
StackOverflow无法提交问题,是因为缺少某些插件按照这位网友的方案,可行为什么会出现“Stack Overflow requires external JavaScript from another domain, which is blocked.."?...
2019-11-30 12:40:35 460
原创 主线程中等待子线程结束
void CATCommandDlg::OnButtonStart() { //YH012000000006 UpdateData(); char strMcu[100]; DWORD dwThreadID; memset(strMcu,0,100); ShowCalResult(Testing); UpdataClear(1); if (!CheckSNIMEIBT()) ...
2019-11-26 21:23:33 517
原创 MFC post-build step
MFC 中Setting标签下,有Post-build stepcopy Debug\xxx1.3.5.exe . /y会在编译生成exe之后,把这个xxx1.3.5.exe的程序copy到上一级目录下
2019-11-09 15:31:38 221
原创 MFC 判断当前输入法是中文输入法
HKL hkl = GetKeyboardLayout(0);if(ImmIsIME(hkl)) AfxMessageBox("当前是中文输入法");需要包含头文件,并且连接库#include <imm.h>//ImmIsIME#pragma comment(lib, "imm32.lib.")...
2019-11-09 11:40:15 1401
原创 MFC 设置对话框在顶层窗口
BOOL CInput::OnInitDialog() { CDialog::OnInitDialog(); ........ /* * 设置窗口为顶层窗口 */ this->SetWindowPos(&wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE); return TRUE; // return TRUE...
2019-11-09 11:00:13 1344
原创 往当前内核添加驱动程序
接上前面编译内核的文章内核编译好了之后,自己要往内核中添加自己的驱动程序,如果加呢?选择一个目录加入自己的驱动文件nasri@ubuntu:~/Work/linux-source-3.13.0/$ 因为前面编译内核是在上面这个目录下编译的所以就在这里添加自己的驱动文件,在driver/char 下创建一个目录nasritestnasri@ubuntu:~/Work/li...
2019-11-07 00:55:21 1384 2
原创 vmstat 命令
除了top之外,vmstat也可以查看系统的一些信息nasri@ubuntu:~$ vmstat -S Mprocs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in ...
2019-11-05 23:14:03 197
原创 ubuntu 更换内核之后全屏是黑屏,提示could not set the configuration for CRTC 63
用VMware更换了3.13的内核,开启虚拟机,运行ubuntu之后发现全屏状态下是黑屏不全屏就可以正常显示,但是弹出一个对话框提示“could not set the configuration for CRTC 63”用命令查下当前内核支持的分辨率nasri@ubuntu:~$ sudo xrandrScreen 0: minimum 1 x 1, current 800 x ...
2019-11-05 22:55:55 2522 1
原创 编译ubuntu内核
看了《奔跑吧 Linux 内核》的书,感觉内存管理这一部分后面的例子不错,就想手敲一遍体验一下例子(自己对这方面感觉一直云里雾里)nasri@ubuntu:/usr/local$ apt-cache search linux-sourcelinux-source - Linux kernel source with Ubuntu patcheslinux-source-3.13.0 ...
2019-11-03 18:13:49 483
原创 PyQt5 + Excel 读写操作 + 扫码枪检测
import osimport sysimport timeimport datetimeimport tracebackimport xlwtimport xlsxwriterimport xlrdimport tracebackfrom xlutils import copyfrom PyQt5 import sipfrom PyQt5.QtGui import QIc...
2019-09-20 14:39:57 4747 2
原创 GPRS测试服务端
项目是通过设备的GPRS和服务器端连接,然后把当前的时间发送到设备端这里只是服务端的代码import osimport sysimport timeimport tracebackimport http.clientimport selectorsimport socketfrom datetime import datetimefrom PyQt5.QtGui impo...
2019-09-17 18:39:35 482
原创 使用Pyinstaller 打包PyQt5程序
打包操作pyinstaller --hidden-import=PyQt5 gprs_test_server_ui.pyD:\Python\GPRS_Test_Server>pyinstaller --hidden-import=PyQt5 gprs_test_server_ui.py163 INFO: PyInstaller: 3.4164 INFO: Python: 3.7.3...
2019-09-12 18:24:21 491
原创 Python 做一个高并发的GPRS测试服务端
公司的设备需要做一个GPRS的测试测试的时候将服务器端的时间写入到设备这样一来测试了GPRS的功能,二是将最新的时间同步到了设备设备端当然就是客户端了,那需要写一个支持高并发的服务器端查了下asyncio是一个不错的库,不过这个对我来说没有必要(确切来说我不懂怎么样用哈哈哈哈)所以就用selector做一个简单的支持高并发的服务端了就和网络上大多数例子一样,如果你看了我下面...
2019-09-10 14:41:22 528
原创 Python module 'asyncio' has no attribute 'get_event_loop'
D:\remote_git\iot_tool\download_tool\concurrent\Scripts\python.exe D:/Python/concurrent/asyncio2.pyTraceback (most recent call last): File "D:/Python/concurrent/asyncio2.py", line 1, in <module...
2019-09-10 13:50:38 1650
原创 Python 网络服务端
查看下本机开放的TCP端口在windows 命令行下用netstat -a查看到状态为LISTENNING的端口比如80 ,135,443这些端口用这些端口在python的程序(服务器端)中试了下会报 协议 本地地址 外部地址 状态 TCP 0.0.0.0:80 QUDONG1PUB1:0 ...
2019-09-07 16:54:15 167
原创 表 'material.dbo.xxxxx' 的 IDENTITY_INSERT 已经为 ON。无法对表 'xxxxx' 执行 SET 操作。
在对一个表插入数据的时候,如果有插入自动编号,则可能会提示错误:当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'xxx' 中的标识列插入显式值。我在对一个表做了insert into 之前做了set identity_insert PCBASettingList ON的操作发现突然提示:“表 'material.dbo.xxxxx' 的 IDENTITY_I...
2019-09-04 09:18:44 5521
原创 WIN10下VC6单步调报错解决方法((OLE32.DLL): 0xC0000005: Access Violation)
win10下安装vc6之后单步调试提示First-chance exception in 程序名.exe (OLE32.DLL): 0xC0000005: Access Violation做如下设置即可解决:1、菜单Tools->Options中的Debug,Disassembly window下的Source annotation取消2、保存设置,然后即可单步调试...
2019-09-03 19:43:45 1546 1
原创 通过 SQLDbx 的某个表创建相同表型的空表
1:在一个表上邮件-->script CREATE 右边生成对应的代码 代码就是生成表的代码2:在SQL 2005的“表”上新建查询,然后把这个代码复制进去,点击“执行”,就生成一个空表了。...
2019-09-03 17:41:06 619
原创 通过SqlDbx导出*.sql,然后倒入到SQLServer2005
1: 选中需要导出的表2: 右键-->Export Data to-->File(as insert)...保存为.sql文件导入到SQL2005操作比如说导入到系统表下面:先建立一个空表,然后新建查询,将前面导出的SQL文件的内容复制到这个新建查询的编辑页中然后点击执行注意,如果带有ID的,可能会报错"当 IDENTITY_INSERT 设置为 OFF...
2019-09-03 17:11:08 1434
HF_FullRAM_Vect_LG.zip
2020-04-27
GD32E10x_User_Manual_CN_V1.0.pdf
2020-03-14
一个关于注册表和串口COM操作的小程序
2018-10-21
Si4438C datasheet
2018-10-08
IAR7.x所需要的,IAR 8.2可以尝试破解文件
2017-11-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人