Hello world
上面那张图是我在高三的时候建立的博客,当时用的还是Gridea推送+Coding page代码托管,进行静态博客搭建。这是也我目前所能够了解到的最为简单快速的搭建方式。前阵子想尝试用Hexo重新建立一个静态博客,也算是给我的博客翻新了。结果一不小心将Coding上存放我博客文件的仓库删掉了。最后不得不将建立静态博客这一议程提前进行。
其实一开始是打算用Hexo+coding部署的,直到昨天我还在坚持这一想法。但由于部署过程频频报错,有时候甚至连错误信息都没有,查了很多资料都无解。最后实在是受不了了,才用Hexo+Github部署我的博客。这里对后面想要建立静态博客的朋友们提个建议——在短时间内,最好用Hexo+Github的方式来搭建自己的静态博客。
还在念初中的时候突发奇想,寻思着要建立一个网站,搭建一个论坛式的网络平台。苦于当时的我还没有本事从头开始码代码,但凭借着这一时的冲动,直接买了一本搭建网站的教程,打算从头开始学。当时我把我的想法告诉了几个好哥们。几个人都对我摇了摇头,一致认为我的想法难以实现。现在想 ...
STM32学习笔记(2)
学习过程跟随洋桃电子——STM32入门100步
关于Cortex系统定时器(SysTick) 在“亮灯仪式”之后,接下来就要尝试为LED小灯添加延时以实现亮灭的效果。
与传统51相比,事实上STM32的延时大多也采用C语言循环体的方式来进行延时,但是STM32同时也存在计时器进行计时,这一点和定时器中断有点类似。接下来我们就要开始学习一下传说中的“嘀嗒计时器”啦!
传说中的“嘀嗒计时器” 如果你的STM32芯片有操作系统,那么“嘀嗒计时器”可用来切换系统。当然了,我们也可以用来延时,用法与传统51的定时器很类似。我们需要调用相应的函数来使用对应的寄存器,具体的使用在官方文档里有体现。
这里我们附上源码来说明:
/*****delay.h*****/#ifndef __DELAY_H#define __DELAY_H #include "sys.h" void delay_s(u16 s);void delay_ms(u16 ms);void delay_us ...
HTML DOM闲谈
这天网站老是访问不了,没想到换了DNS还是不行,上次碰到这么棘手的情况还是上次。几周前同学说起我的网站许久没有更新,细细想来我确实已经很久没有更新博客了。左思右想决定要更新一点什么东西,不然再这样下去就要被人发现我在摸鱼了!
前阵子为了研究怎么写油猴脚本,就拿了花园当例子。在看了资料后写了一小段,但由于时间的关系,就没有接着往下写了。其实就是因为懒,所以如果我一事无成,其实一点都不奇怪
// ==UserScript==// @name IIrose Tool// @namespace IIrose Tool// @version 0.1// @description 蔷薇花园拓展功能// @author 缄默中等待// @match https://iirose.com// @match http://r.iirose.com// @icon https://iirose.com/images/system/ic_square.png// @gr ...
STM32学习笔记(1)
学习过程跟随洋桃电子——STM32入门100步
这一篇文章主要是补之前还没说到的一些知识,事实上GPIO的使用是很重要的。
关于GPIO的使用 这里关于GPIO的组成和原理在这里就不多赘述免得我下次没东西写。不然写着写着就和教程没什么区别的,毕竟学东西还是要自己理解才行,等我整明白电路部分再做补充吧!
单片机学习笔记(12)
多位数码管的动态显示(下)单片机开发板例程代码详解
单片机学习笔记(11)
多位数码管的动态显示(上)单片机课程代码详解提示:撰文本文的目的是为了学习交流,仅供参考,不保证其正确性。
废话少说,上代码!
#include <STC15.H>#define u8 unsigned char //将unsigned char重定义为u8,下面一行同理#define u16 unsigned int #define PLed P2 //将单片机的P2口用PLed表示,下面两行同理#define PSeg P4#define PSel P6u8 code SegCode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92 ,0x82,0xf8,0x90,0xbf,0xff,0x8c}; //定义一个名为SegCode的数组,用来存放多位数码管的字形码u8 DisBuff[4]={10,10,10,10}; //该数组用来存放Sec处理后的数据void DelayNms(unsigned int i); //声明子函数,下面两行同理void D ...
单片机学习笔记(10)
1602液晶显示(下)字符型液晶显示模块指令集 上一篇文章中讲到关于初始化液晶屏部分时,出现了以下部分。
LcdWrCmd(0x38);LcdWrCmd(0x0C);LcdWrCmd(0x01);LcdWrCmd(0x06);
事实上这里的十六进制数并不是凭空产生的,根据资料里的指令集可以得到相应的指令码,根据需要利用指令码向液晶屏发送相关的命令。
Function set(功能设置)
需要说明的是,当DL=1时,使用的是8位数据总线DB7-DB0,即所有的8个IO口。同理,当DL=0时,使用的是4位数据总线,即DB7-DB4,DB3-DB0不用,用此方式传送数据,需要分两次进行。
DB1与DB0两个位是 * ,表示无论是0或是1都是可以的。
Display on/off control(显示开/关控制)
Clear display(清 显示)
上图的00、01、02等地址就是DDROM的地址。
地址计数器AC=0时为自动增一模式,这里指的 ...
单片机学习笔记(9)
1602液晶显示(上) 事实上利用单片机实现1602显示,首先要经过HD44870芯片(视具体情况)才能控制液晶屏。我们先从液晶屏的引脚说起:
时序 对于单片机而言,机器只能识别0与1两种,所以为了表达更多的意思,就有了高低电平+时间的表达方式——时序。
注意:使用速率比较高的芯片(ARM 32)还是需要用延时函数的
写命令/数据程序// 写命令程序void LcdWrCmd(uchar cmd) //利用英语单词给变量名“赋义”{ LcdBusy(); //判断液晶屏状态是否在忙 LcdRS = 0; LcdRW = 0; LcdDB = cmd; //数据发送至P2口(参考本篇文章第一张图中的原理图) LcdEN = 1; //使能引脚先拉高再拉低,将命令写入 LcdEN = 0;}
// 写数据程序void LcdWrDat(uchar cmd) //和“写命令程序”原理大同小异{ LcdBusy(); LcdRS = 1; //引脚电平状态与时序图相对应 LcdRW = 0; LcdDB = ...
单片机学习笔记(8)
待填