自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 数字集成电路仿真实验与设计——基于FPGA的DDS信号源设计

DDS是直接数字式频率合成器,与传统的频率合成器相比,DDS具有低成本,高分辨率,低功耗,高分辨率,和快速转换时间等优点,广泛应用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。...

2022-06-13 12:37:27 6116 7

原创 嵌入式系统项目设计——电子琴(完整代码)

内容摘自上学期嵌入式系统课程设计最终的实验报告,我甚至是组长(笑),与上一个实验相比,使用了相同的硬件,所以硬件示意图完全相同,但实现的功能完全不同。因为CSDN不支持上传word资料,所以我就摘录下来写进文章里了,希望可以帮助到你第一章 绪论1.1选题背景在中国,1958年北京邮电学院研制了一台电子管单音电子琴。由于种种原因,至1977年后,我国才大批生产电子琴。1989年,我国年产儿童电子琴200万台,并出口39万台。中国的电子琴事业正在迅速发展。电子琴发展很快,琴的各项功能日趋完善。音色和节奏

2022-03-09 00:06:45 10462 31

原创 嵌入式系统项目设计——基于LED、按键、蜂鸣器的打地鼠游戏(完整代码)

内容摘自上学期嵌入式系统课程设计最终的实验报告,因为CSDN不支持上传word资料,所以我就摘录下来写进文章里了,希望可以帮助到你第一章 绪论1.1选题背景打地鼠游戏是一种非常受小孩子欢迎的游戏,拥有数量极其广大的受众,所以它的市场前景非常广阔。当今社会虽然存在各种各样的打地鼠游戏,但大多功能不完善,因此,本次课程设计的目的就是设计一款功能较为完善的打地鼠游戏。1.2 项目需求分析1.2.1 基本功能通过驱动实现8个LED的随机点亮,按下对应按键计一分,且下一个灯立即随机亮起,若超过响应时间且对

2022-03-08 23:49:07 11925 10

原创 嵌入式Linux C++练习8——创建型模式

1. 工厂方法实现计算器的四则运算#include <iostream>#include <memory>using namespace std;class cal //抽象产品类{public: float num1() { return a; } void num1(float x) { a = x; } float num2() { return b; } void num2(float x) { b = x; } vir

2021-08-20 19:29:44 174

原创 嵌入式Linux C++练习7——栈和队列实现简单的停车场管理系统

题目:设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆根据到达先后依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在他之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆在依原来的次序进场。编制模拟该停车场的管理的程序。思路:最里面的车子想出来,需要先让外面的车子都出去,等该车出去后

2021-08-12 23:12:58 420

原创 嵌入式Linux C++练习6——类模板2

定义一个模板栈,用栈实现队列的功能(push,pop,先进先出)思路:同C语言两个栈实现一个队列一样,构建一个辅助栈,执行pop操作时,先将数据从主栈pop出push进辅助栈,再从辅助栈中pop出,没什么难度的题目#include <iostream>#include <stack>using namespace std;//思路:同C语言两个栈实现一个队列一样,构建一个辅助栈,//执行pop操作时,先将数据从主栈pop出push进辅助栈,//再从辅助栈中pop出t

2021-08-10 18:05:43 144

原创 嵌入式Linux C++练习5——类模板1

编写一个程序,使用类模板对数组元素进行排序,倒置、查找和求和要求:具有对数组元素进行排序,倒置、查找和求和功能,然后产生类型实参分别为int型和double型的两个模板类,分别对整型数组与双精度数组完成所要求的操作shuzucaozuo.h#include <iostream>using namespace std;const int maxsize = 100;template <typename T>class A{private: T a[maxs

2021-08-10 16:27:45 541

原创 嵌入式Linux C++练习4——小型公司人员信息管理

设计要求:某小型公司,主要有四类人员:经理、技术人员、销售经理和推销员。现在,需要存储这些人员的姓名、编号、级别、当月薪水。计算月薪总额并显示全部信息。人员编号基数为 1000,每输入一个人员信息编号顺序加 1。程序要有对所有人员提升级别的功能。 本例中为简单起见, 所有人员的初始级别均为 1级。然后进行升级,经理升为 4 级,技术人员和销售经理升为 3 级,推销员仍为 1 级。月薪计算办法是:经理拿固定月薪 8000 元;技术人员按每小时 100 元领取月薪;推销员的月薪按该推销员当月销售额的

2021-08-07 22:28:38 509

原创 嵌入式Linux C++练习3——继承和派生

使用类的继承和派生实现对矩形,正方形,三角形,圆形的定义,并实现对长方体,正方体,球体和圆锥的表面积、体积的计算。#include <iostream>#include <cmath>using namespace std;const float pi = 3.14;class Line //线{public: Line(float len) : m_len(len) {} virtual float area() = 0; //面积 v

2021-08-05 19:06:04 198

原创 嵌入式Linux C++练习2——类和对象2

1. 定义一个Cat类,拥有静态数据成员 numOfCats,记录Cat的个体数目; 静态成员函数getNumOfCats(),读取numOfCats。设计程序测试这个类,体会静态数据成员和静态成员函数的用法。#include <iostream>#include <cstring>using namespace std;class Cat{private: static int numOfCats; char m_name[20];public:

2021-08-03 22:32:49 600

原创 C++的字符串处理函数大整合(持续更新)

以下是我个人整理的较为详尽的、常用的字符串定义方法和函数处理方法,靠后的几个操作整理的较为简略,改天给它补完 画个饼#include <iostream>#include <cstring>using namespace std;int main(){ //定义字符串的两种方式 string s1 = "hello "; string s2("world"); string s3 = "Nice to meet,"; string s4("

2021-08-01 18:45:57 303

原创 C语言实现冒泡编程(泛型编程)

定义:泛型编程(Generic Programming) 指在多种数据类型上皆可操作。和面向对象编程不同,它并不要求额外的间接层来调用函数,而是使用完全一般化并可重复使用的算算效率与针对某特定数据类型而设计的算法相同。一些碎碎念:相比C++,C语言的泛用性很差,这里强行用C语言实现了冒泡排序,说实在我也没太吃透这玩意,还是C++泛用性高,真香#include <stdio.h>#include <stdlib.h>#include <string.h>#de

2021-08-01 18:39:43 394

原创 嵌入式Linux C++练习1——类和对象1

1. 定义一个Dog类,包含了 age , weight等属性,以及对这些属性操作的方法。实现并测试这个类。#include <iostream>using namespace std;class Dog{public: void setdata() { cin >> name >> age >> sex >> weight; } void GetName() {

2021-08-01 18:27:26 1103

原创 2021-07-13Linux C开发学习笔记 -I/O技术

Linux C开发-I/O技术Linux文件类型分类:普通文件d:目录文件l:链接文件c:字符设备文件(键盘、串口)b:块设备文件(硬盘、CDROM)p:管道文件(pipe,缓冲文件)f:堆栈文件s:共享文件文件描述符:动态分配:只要当操作这个文件时,系统才会给你分配文件描述符知道一个文件的id,操作这个id,等于操作这个文件非负整数:存在0 1 2这三个文件描述符,所以动态分配文件描述符从3开始程序开始运行时,有三个文件被自动打开:/dev/stdin:标准输入文

2021-07-13 20:08:32 78

原创 嵌入式LinuxC--数据结构--双链表所有功能的整合与实现

0.头文件及结构体定义#include <stdio.h>#include <stdlib.h>typedef struct Node* node;1.定义双链表结构体struct Node{ int value; struct Node *next; //后接口 struct Node *prev; //前接口};2.插入新的双向结构体(申请空间)int init(node *head){ node newnod

2021-04-26 16:18:29 111

原创 嵌入式LinuxC--数据结构--单链表所有功能的整合与实现

0.头文件#include <stdio.h>#include <stdlib.h>1.定义链表结构体struct Node{ int value; struct Node* next;};2.定义新的链表节点(申请空间)int init(struct Node **head){ struct Node *newnode = (struct Node *)malloc(sizeof(struct Node)); if (NUL

2021-04-09 23:14:49 111

原创 随机数生成原理及代码模拟

计算机生成随机数逻辑:伪随机(计算机随机取一点,固定在点周围取数)解决方法:加入时间函数<time.h>,让时间函数控制取点例题:随机 生成一列数,用最快的时间找出最大和第二大的数输出#include <stdio.h>#include <time.h>#include <stdlib.h>int main(){ srand((unsigned)time(NULL)); //时间函数,注意点:1.需要强制转换成无符号型 2.返回一个.

2021-04-01 23:19:12 596

原创 类型转换函数的代码实现

写在之前的话:之前一直在搞学校的竞赛项目,忙了好久(咸了好久 ),现在项目验收了 稍微清静了点,就更新一下之前学习的成果(炒炒冷饭 )。再来谈谈为什么要做这样一个整合呢,之前在学习过程中了解到:类型转换函数itoa、itof等本身代码实现并不困难,但正因为简单且平时使用的很少,所以容易被忽视,并且在近几年的企业面试中也曾作为考题出现过,所以觉得有必要总结记忆一下(将来好混口饭吃 )。不多废话,贴代码了1.itoa代码实现#include <stdio.h>int main(){

2021-04-01 23:15:28 248

原创 printf打印格式的进阶命令

格式:printf("\033[字背景颜色;字体颜色m字符串\033[0m" ); printf("\033[47;31mhello world\033[5m");47是字背景颜色,31是字体的颜色,hello world是字符串,后面的\033[5m是控制码。在进行以上打印hello world的代码操作后,直到下一个\033[0m出现前,所有打印出的内容(包括空格、换行)都会修改为白色背景,红色闪烁文字。颜色代码:字背景颜色范围: 40--49 字颜色:

2021-02-17 11:12:40 295 1

原创 C语言基础

1、数据:数据类型、变量、常量、函数、注释基本数据类型:字符型: char - 1 字节整形: int - 4 字节短整形: short int(short) - 2字节长整型: long int(long) - 8字节浮点型: float - 4 字节双精度: double - 8 字节数据类型的本质:根据所占内存大小来决定的size of :显示字节大小 一个字节 = 8 b

2021-02-09 19:55:29 111

原创 嵌入式Linux文本编辑器-vim的三种模式

一、 命令行删除「x」 //每按一次,删除光标所在位置的“后面”一个字符「*x」 //删除光标所在位置后*个字符「X」 //大写的X,每按一次,删除光标所在位置的“前面”一个字符「*X」 //删除光标所在位置的前*个字符「dd」 //删除光标所在行「*dd」 //从光标所在行开始删除*行复制「yw」 //将光标所在之处到字尾的字符复制到缓冲区中「*yw」 //复制*个字到缓冲区「yy」 //复制光标所在行到缓冲区

2021-02-07 21:59:19 2189 5

原创 嵌入式Linux开发工具-编译器gcc以及库的制作

基本概念一、交叉编译器:是什么?在一个平台上生成仅可在另个平台上运行的可执行代码→区别于本地编译为什么?(嵌入式硬件受限于成本)运行速度:目标平台的嵌入式硬件通常被设计为低成本和低功耗,没有太高的性能,运行速度较主机过慢。编译能力:嵌入式系统往往没有足够的内存或磁盘空间来支持极为消耗系统资源的编译过程可使用性:有的嵌入式系统连目标平台还没有建立,操作系统都没有,就算资源足以支持编译,可连编译器都没有,怎么运行编译器呢?可移植性:一个完整的Linux编译环境需要很多支持包,交叉编

2021-02-05 23:57:14 431 1

原创 Training4:字符串训练

1.题目: 请编写一个C函数,该函数将一个字符串逆序#include <stdio.h>#include <string.h>void exc(char *str){ int n; int temp; int len = strlen(str); for (n = 0; n < len / 2; n++) { temp = *(str + n); *(str + n) = *(str + le

2021-02-04 00:27:42 205 1

原创 Training2:位操作训练

1.题目:请编写一个c函数,该函数给出一个字节中被置为1的位的个数#include <stdio.h>void count1(int a){ int count = 0; while (a) { count++; a = a & a - 1; } printf("输入的数共有%d位被置1\n", count);}int main(){ int num; printf("输入n的值

2021-02-02 16:48:31 119

原创 Training 1:整数算法训练

Training 1:整数算法训练1.题目:通过编程实现,统计1~n有多少个9提示:n通过参数传入#include <stdio.h>int count9(int n){ int a; int b; int count = 0; for (a = 1; a <= n; a++) { b = a; while (b != 0) { if (b % 10 == 9)

2021-02-01 22:02:32 172

嵌入式Linux常用命令总结.mmap

较上一次上传的嵌入式Linux命令总结做了更充分的补充与注释

2021-02-01

嵌入式系统开发概述.mmap

以入门者的视角介绍了嵌入式系统开发的基础知识

2021-01-19

Ubuntu18.04安装教程.doc

详述了如何在Windows系统上安装Ubuntu18.04虚拟机的操作

2021-01-18

空空如也

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

TA关注的人

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