自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (13)
  • 收藏
  • 关注

原创 【STM32F4xx】USB开发的一些坑!

因为某些需求,需要在STM32上开发USB驱动,从网上找了个CDC的例子,又找了VC的上位机进行通信测试,把我两百多的下载积分都用光了,哎真是坑啊,有些下载了基本不能用,不是endpoint的通信。 第一个坑:USB开发时,其系统频率必须使用168MHz,具体我就不细说了,可以参考下面的帖子: https://blog.csdn.net/zhengnianli/article/details/102946950 USB的系统频率配置如下:...

2020-05-21 13:11:38 3923 5

原创 [STM32] 实时修改PWM波的输出频率

最近在做PWM的电机控制,需要通过修改PWM的频率来控制电机的速度。 使用如下的函数: void TIM_SetAutoreload(TIM_TypeDef* TIMx, uint32_t Autoreload); 该函数可修改定时器的ARR值,使得定时器的周期改变。 在使用时,总是会随机的出现PWM输出消失的情况,通过排查,运来在调用TIM_Set...

2020-04-11 17:52:57 11908

原创 [RK3399][Android7.1]适配 FIBOCOM的4G模块 NL668

按照FIBOCOM给的Android适配文档进行操作即可。其中有几个坑会在描述过程中标注出来。一、添加USB驱动。直接将FIBOCOM的NL668模块接上,插上卡,是检测不到卡的。串口调试模式下,输入指令:$ su# cd dev# ls查看设备节点,是没有ttyUSB0-4的。各个设备节点功能如下图所示:其中ttyUSB2为AT指令端口。因此第一步...

2019-11-02 14:04:17 4031

原创 [RK3399][Android7.1]编写一个安卓的GPIO驱动

1、在kernel/drivers目录下新建ioctrl文件夹# cd kernel/drivers# mkdir ioctrl在/driver/ioctrl目录下,新建ioctrl.c ,ioctrl.h , Kconfig, Makefile 等4个文件。2、在Kconfig下添加代码:config IOCTRL tristate "io Control"...

2019-10-22 20:38:35 2647 3

原创 [RK3399][Android7.1]触摸屏TP,敦泰FT5436驱动移植

最近在RK3399上移植了敦泰的FT5436触摸屏驱动,分享出来供大家参考。 找敦泰厂家索取FT5436的驱动包,驱动包名称:focaltech_touch 没有什么需要特别注意的地方,按照驱动包里面的移植...

2019-10-19 21:05:19 4610 11

原创 【STM8S003】GPIO复用问题 TIM2_CH3 采用PD2引脚输出

最近做了一款产品,使用STM8S003F3的片子,产品要求使用TIM2,在PD2引脚输出PWM波形。 安装了STM8专用版的IAR,下载了STM8的库文件,新建了工程,开始编写功能。 由于没有STM的经验,也是查阅了大量资料,花了1天时间搭建环境,写了一个简单的IO口定时输出高低电平的测试程序进行测试,用库文件,GPIO控制还算简单。 ...

2019-09-28 15:44:52 3167

原创 [RK3399] [Android7.1] 驱动设备节点的权限问题

本节背景:已经编写好驱动,并生成驱动节点,驱动在启动时加载,并且通过串口调试,进入dev目录下,可查看到自己的驱动。 Android的APP,通过so库调用驱动时,如果不给驱动节点权限,则在打开设备时,会出现打开失败的情况。 在串口调试模式下,我们回到根目录,可以看到ueventd.rc文件,cat一下(cat ueventd....

2019-09-25 09:52:34 2055

原创 [RK3399] [Android7.1] 解决Out of memory error问题

编译Android源码,官方给定的配置为:64位CPU,16G内存,150G存储空间。但是我们的客观情况有时候满足不了要求,最常见的就是内存问题,一般4G,8G的比较普遍,因此在编译时,经常出现out of memory错误。另外对于初学者提醒一句,存储空间一定要大于150G,我在刚开始的时候,没经验,虚拟机只分配了20G空间,后来改为50G、80G、120G都不行,后来直接分了2...

2019-09-21 19:16:17 1442

原创 [RK3399] [Android7.1] 系统相机调用USB摄像头失败问题

我这有两款摄像头,分别是 KS2A418-2.0、USB HD Camera,这两款摄像头都支持UVC。这两款摄像头接电脑都可以正常打开,但是接到RK3399开发板,USB HD Camera可以正常打开, KS2A418-2.0则提示Camera error cannot connect the camera。查看两款摄像头分辨率,分别如下:通过查询资料,可能是系统相机默...

2019-09-17 11:29:25 3971

原创 Ubuntu下,使用NDK生成so文件错误:error:implicit declaration of function 'ioctl' is invalid

开发板:firefly-rk3399SDK:Android7.1背景:编写了一个linux内核的驱动文件,生成设备节点,通过C语言程序进行调用测试,将该C语言测试程序放入开发板进行测试,起测试代码如下:#include <stdio.h>#include <stdlib.h>#include <fcntl.h>#define DEVICE_N...

2019-09-12 22:28:46 2172

原创 浅谈ZigBee消息机制

本章简单的介绍一下ZigBee的消息机制,如果说的有问题还请多多指正。通俗的说,ZigBee的消息机制就好比这有一排抽屉,当我要向某个任务或者事件发送消息时,就把该消息和对应的数据放到抽屉中,在任务轮训时,某个任务轮训按个查看抽屉中是否有自己需要的消息,有就取出并且处理,没有就结束,等待下一次轮训。ZigBee消息链表如下图所示:(注:消息机制实现代码在osal.c中)

2016-08-14 17:40:09 4370 1

原创 C语言编写年月日格式时间转换为格林威治时间

在编程的某些时候需要使用格林威治时间进行时间的管理,而在平时我们几乎都是使用年、月、日、时、分、秒这种时间。两者的转换在编程中十分重要。一般在使用编程软件编写时都自导转换函数,不过在嵌入式里面可就没有那么好的待遇了,本篇提供一种年月日时间转换为格林威治时间的方法,首先了解一下格林威治时间:       格林威治时间:格林威治时间是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,在编程中直白的

2015-11-09 22:48:35 6027

原创 ZigBee OTA镜像页升级

(转载请指明出处:http://blog.csdn.net/d4l6c8) 最近很多人问ZigBee-OTA的镜像页升级方式如何实现,本人整ZigBee的时间也不短了,并且优化了协议栈自带的OTA升级,由ZigBee-OTA镜像页升级网上的资料很少很少,因此我决定将自己设计实现镜像页升级的方案提供出来供大家参考。 首先分析一下镜像块升级和镜像页升...

2015-03-10 22:43:45 7860 6

原创 The stack `XdataStack`()is outside the stack range

ZigBee在调试的时候有时候会出现The stack `XdataStack`()is outside the stack range的情况,出现这样的情况很多人都不知道该怎么办才好,上网搜索解决办法大多都是在Option->General Options->Stack/Heap里面XDATA数值,但是实际的情况是XDATA已经达到最大值,无法再设置XDATA,因此这个方法很多情况下是不可行的,

2014-09-10 21:33:53 3059 1

原创 【RK3399】Ubuntu系统,HDMI输出固定分辨率

在linux系统目录下:/usr/share/X11/xorg.conf.d,新增 screen-resolution.conf文件。配置该显示器的显示方式,有多组参数可配,如:Option "RightOf" "HDMI-2",可得到以下显示,将Modeline的值copy到配置文件中的modeline即可,可设多组。"HDMI-1"是根据xrandr拿到的,外接显示器的接口名字。选择1280x800_60.00的modeline进行显示。设置的显示参数,其值可根据cvt获取。

2024-04-13 16:31:43 356

原创 ARM Linux QT虚拟键盘的系列问题

本文解决以下问题:(1)QT自身不带有虚拟键盘;(2)QT虚拟键盘部署方法;(3)QT虚拟键盘遮挡输入框;(4)QT虚拟键盘全屏不显示问题。

2022-06-04 14:44:22 5070 3

原创 【RK3399 Android系统】,启动时出现”Unable to handle kernel paging request at virtual address 490000004c“的解决思路

Unable to handle kernel paging request at virtual address 490000004c 根据网上的搜索结果,查看地址为pgd = ffffff80093ea000,查看系统源码下的kernel下的System.map,查看该该地址对应的函数,为swapper_pg_dir,这个函数不是自己写的函数,因此再往下查...

2022-06-04 13:05:15 2007

原创 【RK3399 Android】天马MIPI屏幕TM080TDGP01,启动参数dts配置调试。

前期调过天马的10寸屏,现在要更换天马的8寸屏,特地记录一下调试过程。本文章只记录屏幕参数调试过程,其他硬件调试过程不再详细描述,有需要可以参考其他文章。需要注意的硬件资源包括复位引脚,时钟引脚,信号引脚,I2C引脚等。RK3399,Ubuntu系统,LVDS屏幕配置调试天马的MIPI屏幕,需要一个配置文件,如下图所示。下载链接我附到最后,需要的可以下载,这个文件为配置天马屏幕的启动序列。 我使用的是RK3399,MIPI的配置文...

2022-03-12 21:47:10 4656 1

原创 手机听筒声音越来越小怎么办

手机时间用长了,感觉听筒声音越来越小,音量调到最大也感觉像隔着一层东西似的。出现这种情况,如果听筒不是一点声音都没有了,那么是可以解决的。现在手机听筒的的眼儿很小,使用时间长了就容易被一些脏东西堵住,仔细观察一下手机,可以看到听筒的地方基本都被堵上了。找一只不用了的牙刷,对着耳机听筒的位置多刷几下,基本就可以刷掉这些脏东西,再试试打电话声音就变得很清晰了。...

2021-10-18 00:54:18 1086

原创 Ubuntu下的USB权限问题

Ubuntu系统中,如果要使用USB节点,必须获取使用权限,临时获取使用chmod 777 +节点路径即可。sudo chmod 777 dev/bus/usb/005/002但是每次关机权限就会恢复,如果是开发编程,使用这个方式获取权限太过复杂。下面说一种永久获取权限的方式。首先,在根目录下,使用lsusb指令查看usb的位置可以看到拔插USB后,多了一个ID:0483:5760,位置在Bus001,Device047。查看节点权限。ls -all /dev/bus

2021-10-16 16:29:52 3296

原创 RK3399核心板,装Ubuntu18.04系统,LVDS屏幕配置

使用RK3399核心板CORE-3399-JD4,接口板是自制的,采用MIPI接口转LVDS,现在在3399的板子上装ubuntu18.04系统,在该系统上点亮LVDS屏幕。1、首先安装Linux系统我安装的是ubuntu16.04的系统,具体安装步骤不再过多描述。2、按照firefly的维基教程安装开发环境和ubuntu18.04的系统源码ubuntu18.04源码环境及编译 维基教程3、根文件系统 使用firef...

2021-10-14 21:39:42 4649

原创 WPS有时候出现字母按不出,打字丢失字母的问题

WPS使用时,有时候会出现字母按不出来,需要按好几次才能出来的情况,在浏览器或者文本文档就很正常,是什么原因呢?出现这种情况,主要是由于剪切板内容过多导致,清除剪切板内容,此问题变会消失。按住WIN+I按键,打开设置界面,点击系统设置,点剪切板,点击清除即可解决该问题。...

2021-04-29 20:10:09 3278 3

原创 使用STM32CubeMX生成USB驱动程序 USB无法检测到的问题 生成USB驱动

一、使用STM32CubeMX生成USB驱动程序打开STM32CubeMX软件,选择Start My project formMCU,点ACCESS TO MCU SELECTOR。选择相应的芯片信号,点击Start Project配置RCC的High Speed Clock为图中所示,位置为外部时钟。选择SYS的Debug为Serial Wire,开启调试,否则下载程序后无法再次下载。具体解决方法参考链接:ST-LINK无法下载程序的解决方法在Connectiv

2021-04-29 15:16:54 11689 4

原创 STM32CubeMX生成HAL库文件,出现identifier “HAL_StatusTypeDef” is undefined错误

使用STM32CubeMX生成了一个工程文件,在使用串口库文件是,出现:“”identifier “HAL_StatusTypeDef” is undefined”错误。经过测试发现是在添加的usart.c文件中,直接调用了#include "stm32f1xx_hal_uart.h"头文件,便会出现上述错误,解决方法经过测试,在调用#include "stm32f1xx_hal_uart.h"头文件时首先调用#include "stm32f1xx_hal.h"头文件,该头文件根据自己工程修改,我的

2021-04-22 19:35:45 4841 1

原创 使用STM32CubeMX生成源码工程后,使用ST-LINK下载出现问题的解决方法

第一次使用STM32CubeMX生成源码工程文件,各种时钟引脚资源配置好后,点击生成了Keil的工程。编译通过,连接ST-LINK下载程序,第一次下载,一切正常,然后修改了一下程序,再次下载,出现找不到设备的提示。 以为板子出了问题,又拿过来一块板子,第一次下载,一切正常,再次下载,同样又出现找不到设备的提示,一共就两块板子,都被我玩废了。原来碰到过1次这种情况,就...

2021-04-22 09:37:00 2193 10

原创 [STM32F0xx]的AD转换驱动程序

STM32F0xx的AD转换程序。 该例程使用的是PB01引脚,AD功能为ADC_IN9,查数据手册,如下图所示。 首先初始化引脚: void adc_init( void ){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd( RCC_APB2Periph_ADC1, ENABLE ); GPIO_InitSt...

2021-04-07 09:55:48 793

原创 Win10系统开机后卡在“请稍后”界面很长时间才能进入

起因是电脑上总是出现很多弹窗,上网搜索网友推荐下载“火绒”弹窗拦截的较多。而我呢又不想使用火绒的安全软件,只想用他的弹窗工具,所以网上搜索了一些弹窗的独立版,下载安装后,弹窗倒是拦截了一部分,但是开机启动立马 变得很慢很慢,卸了这个软件也不行,有网上搜了很多方法,都无济于事。图片源于网络(侵删)后来下载了个Windows优化大师,把所有能优化的全点了一遍,这个问题竟神奇的消失了。有同样问题的,可以下载一个试试。...

2021-03-17 16:57:21 10707 4

原创 gitignore添加文件路径和文件后缀,没有生效

新建的工程,已经git add .但是还没有git commit,然后再添加gitignore后,输入git status,gitignore中的文件并没有被屏蔽,仍能看到文件被修改信息。这种情况主要是因为git是有缓存的,而之前的文件在缓存中,并不会清除掉,还会就继续提交,所以更新gitignore文件后,还要清除缓存文件。git rm -r --cached .如果删除不了,使用强制删除指令。git rm -r -f --cached ....

2021-03-10 13:30:57 468 1

原创 [RK3399][Android7.1]修改镜像名称和系统版本号

RK3399的板子,系统功能一直在修改,系统版本号如何修改,下面是比较土的办法,后续会更新最新的方法:1、镜像名称的修改。我的系统类型是rk3399_firefly_aiojd4_mipi_box,修改路径下的文件device/rockchip/rk3399/rk3399_firefly_aiojd4_mipi_box.mkdiff --git a/device/rockchip/rk3399/rk3399_firefly_aiojd4_mipi_box.mk b/device/rockchi

2021-02-23 19:41:07 1194 1

原创 [RK3399][Android7.1]修改系统配置同时输出Speaker和USB音频

参考链接:Android7.1 音频声音控制策略参考文中给了两种方法,第一种没有成功,第二种成功了。第一种可能是参数给错了,例子给的是Speaker和耳机,我需要的是Speaker和USB音频。第一种:文件路径:hardware\qcom\audio\hal\Audio_hw.cint start_output_stream(struct stream_out *out){ ... // Jon Add Begin out->devices = SND_DEVIC...

2021-02-23 18:56:42 4250 1

原创 [STM32][TMC2660]关于TMC2660电机驱动芯片的初始化操作

TMC2660通过SPI进行芯片参数的控制,一共需要初始化5个参数,具体参数含义可在数据手册上查到,这里不再做过多解释。直接贴代码,根据自己的平台自行移植即可。#define REG_DRVCTRL 0X00000000#define REG_CHOPCONF 0X00080000#define REG_SMARTEN 0X000

2020-12-04 15:48:46 2923

原创 [RK3399] [Android7.1] UAC配置,使用USB转音频喇叭播放声音

因为接口问题,需要在RK3399的板子上使用USB转音频接音箱外放,从网上购买了USB转音频模块,在电脑上和手机上测试接音箱都可以正常播放,但是接到RK3399时,没有声音,从网上查资料发现,原来是RK3399默认没有打开UAC功能。 参考网上配置,配置如下图: 在kernel目录,make menuconfig,在Device Drivers/USB support/USB Gadet Support选项下,选择USB Gadget Drivers为 U...

2020-11-30 17:11:56 3607 6

原创 电机驱动芯片效果对比

一、测试环境分别在同一电机,同一导轨上测试不同电机驱动芯片的性能。电机为新购买的带丝杆的电机。驱动板分别为1:DRV8841驱动板;2:TMC2225驱动板;3:TMC2660驱动板。二、测试记录1、在相同环境下,测试各个电机的噪音,测试结果如下表所示: 运行噪音 最大噪音 室内噪音 50.6 50.6 TMC2660 ...

2020-11-24 14:13:11 4211 2

原创 STM32 关于定时器的问题

最近在做STM32定时器输出PWM波时,碰到一个问题记录一下。由于要输出 2Hz 的PWM波形,PWM引脚使用定时器 TIM1输出波形,TIM1定时器设定为0分频,查看函数传参为32位数据,查看定时器溢出寄存器ARR为32位寄存器,因此计算所得溢出值可以满足要求,ARR的值应该为83999999。 图1 32...

2020-06-24 14:30:43 906

原创 [RK3399][Android7.1] 浏览器出现:站点连接不安全,证书日期无效 问题

在测试Firefly的开发板3399时,使用浏览器出现 站点连接不安全,证书日期无效的问题,使用其他软件上网提示网络故障,无法上网,问题如下:查阅资料,原来是系统时间和现在时间相差太大造成的,更新系统时间即结果该问题。...

2020-04-03 16:06:09 700

原创 [RK3399][Android7.1]关于蓝牙无法连接部分BLE设备的问题

在测试时,发现Firefly的开发版RK3399无法连接部分蓝牙BLE设备,我的蓝牙模块是HC-42,用手机可以连接该蓝牙模块,怀疑是蓝牙驱动部分有问题,查了一周没有任何进展,后联系AP6356S芯片厂家,厂家提供了这个芯片的库文件,包括蓝牙和WIFI的,替换Android系统目录下的etc/firmware/的相关文件,再次测试解决该问题,这个库文件我抽空传上来,有需要的可以先私信。...

2020-04-01 00:59:46 2027

原创 [RK3399][Android7.1] 调试笔记 --- 播放音乐没有声音

调试RK3399时,启动系统后,播放音乐,没有声音,日志出现了如下错误:03-25 09:45:24.743 +0000 251 338 D alsa_route: route_info->sound_card 0, route_info->devices 0 03-25 09:45:24.743 +0000 251 338 D alsa_route: rou...

2020-03-25 19:55:16 1579

原创 [Git] Git新手教程

发现一个写的很不错的git新手教程,原来看了好几天没看明白,一直不知道怎么操作,命令怎么用,都是一些介绍理论的,或者教程一笔带过的,刚发现一个git新手教程,讲的很不错,跟着做两三个小时就学会了基本操作,了解了大概原理,想要学git又不知道从何入手的建议看看,下面是传送门:https://www.liaoxuefeng.com/wiki/896043488029600打开后,右上角有个X,...

2020-03-09 14:47:52 116

原创 关于ST-LINK驱动无法在WIN10上安装的问题

由于之前的ST-LINK坏了,从网上买了几个回来,需要重新安装驱动,花了两个小时的时间,下载了无数的ST-LINK WIN10版的驱动,都安装不成功,提示数字签名不能识别,资源管理器上的ST-LINK图标上总是有一个感叹号,ST-LINK的灯也一直在闪。查了半天资料,原来是数字签名搞的鬼,ST-LINK驱动没有数字签名,只能把WIN10 的数字签名禁止,如何禁止WIN10的数字签名我就不...

2020-02-12 17:37:44 2655

原创 ZigBee学前话

学ZigBee这么久,终于下决心写一些关于ZigBee讲解的文章了,不管写的好与坏,仅仅是想把我学到的一些东西介绍给大家,避免像我这样走了很多弯路。不论你是如何接触到ZigBee这东西的,做项目也好,做设计也罢,在学习之前都应该摆正对于ZigBee的认知,这对于学习ZigBee或者做产品都是有益而无害的,我就是对于ZigBee没有一个正确的认识,有些想法从一开始就是错误的,等产品做出来的才意识到就

2014-12-14 23:42:51 915 3

ARM Linux Ubuntu 虚拟键盘配置文件及配置说明

ARM Linux Ubuntu 的虚拟键盘配置文件,不用编译,直接拷贝编译好的文件到工程目录即可使用。

2022-06-04

STM32F103 usb的驱动程序及USB驱动生成工具

STM32F103 usb的驱动程序及USB驱动生成工具,使用STM32CubeMX生成该工程,测试可用。参考链接:https://blog.csdn.net/d4l6c8/article/details/116268953?spm=1001.2014.3001.5501

2021-04-29

MFC的USB通讯例程 BULK传输

此文件为MFC的USB通讯例程,开发工具为VS2010,采用BULK传输,通过VID和PID打开USB设备,STM32的程序链接如下: https://download.csdn.net/download/d4l6c8/13092884 本资源为编译后的源代码,包含可执行程序。

2021-03-17

MFC的USB通讯例程 BULK传输

此文件为MFC的USB通讯例程,开发工具为VS2010,采用BULK传输,通过VID和PID打开USB设备,STM32的程序链接如下: https://download.csdn.net/download/d4l6c8/13092884 如需可执行文件,请转至以下链接下载,本下载中不包含可执行文件,需编译后才能生成可执行文件:https://download.csdn.net/download/d4l6c8/15872205

2020-11-09

STM32F4xx的USB例程

STM32F4xx的USB例程, BULK通讯,USB1.0,最大通讯速率1.5MB。 配合上位机的MFC程序,可实现通讯,上位机示例: https://download.csdn.net/download/d4l6c8/13099076 参考文档:https://blog.csdn.net/d4l6c8/article/details/106252124

2020-11-06

串口/TCP/UDP通讯工具 源码

使用Visual Studio 2010开发工具开发的, 集串口、TCP、UDP通讯于一体的通讯工具,可进行数据的收发操作,同时包含文件操作,INI文件读写,系统时间获取、解包打包操作等,可为开发上位机的小伙伴们提供参考,在此基础上进行各种上位机功能的开发。

2020-05-21

Focaltech_Touch_FT5436_Driver_for_Qualcomm_V2.2_20180321.zip

安卓上的敦泰TP驱动,TP型号FT5436,将该驱动拷贝到Android源码的触屏驱动位置,可参考教程进行配置 https://blog.csdn.net/d4l6c8/article/details/102642689,积分不够可私信

2020-05-14

正基AP6356S芯片库文件

该库文件用于Android系统,可解决Android低版本系统(7.1及以下)连接蓝牙BLE失败的问题,使用RE文件管理器,替换etc/firmware下的相关文件即可,积分不够可私信

2020-04-17

ZigBee OTA.zip

ZigBee OTA 镜像页升级驱动文件,附带OTA开启教程及驱动加载教程。经过1个月时间编码测试,真是可用。升级节点时间大约在90秒左右。因为目前还是有些需求,因此开放出来,供大家学习参考。C币不知道在哪调,没有C币的可以私信。

2019-10-19

系统时间转换为格林威治时间示例

系统时间转换为格林威治时间的函数,带有简单例子,简单明了,积分不够可私信。

2015-11-09

ZigBee CC2430串口测试程序

Zigbee模块CC2430串口测试程序,简单的中断读串口数据和

2013-03-28

VC++图像处理

VC++图像处理软件,修改前人的,包括图像灰度变换,二值变换,邻域法平滑,中值法平滑,Laplace算子锐化和梯度法锐化几个功能。

2012-12-13

成绩分布图源码

本示例主要的功能是通过给定的一组成绩数据绘制出成绩的分布图(包括直方图和圆饼图)。这里没有用到数据库,因为是一个简单的成绩分布图,而用数据库的话在转到另一台机子上还要重新建表,对于学生信息也要涉及到录入问题,不容易实际操作,所以本示例采用了更为方便的通过手动录入数据或者是从文件(txt格式文本文档,第一个数为总人数,其余为分数,分数之间用逗号隔开)导入数据两种方式绘制出其统计图。录入的成绩可查看可修改,直方图采用了立体图模式,看起来更直观,各个分数段都有明显的分数人数标注,看起来直观形象。饼形图也同样标注了各颜色对应的分数段及人数,看起来很直观。数据录入部分与绘图部分集成在一个对话框上面,没有在单个文档中调用,减少了不必要的繁琐过程。

2012-12-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除