原创 FPGA 學習之路(六)任意分頻技術

本次我們採用FPGA自帶頻率100MHZ分頻到115200MHZ用於UART波特率的實現。 DDS原理分析 在介紹任意分頻技術之前我們先來看一下直接數字頻率合成技術DDS的原理以利於後學的程序設計: 這裏要介紹以下直接數字頻率合

原创 FPGA 關於錯誤(10200)

本人在調試FPGA時有時會出現以下錯誤: Error (10200): Verilog HDL Conditional Statement error at delay.v(23): cannot match operand(s)

原创 QuartusII 問題總結

QuartusII 問題總結 使用 Quattus 會遇到許多 Warning,硬件描述語言和 C 不同,有些 Warning 是不允許存在的, 有些可以忽略。做一下對 QuartusII Warnning 的總結。 帶編號的

原创 STM32 學習筆記--SPI通信配置

SPI時序 SPI時序圖如下: STM32做爲主機設計SPI時序一般選用CPOL=1/CPHA=1; SPI通信配置 1、時鐘使能。GPIO時鐘使能RCC->APB2ENR,SPI時鐘使能RCC->APB2ENR設置。 (爲什

原创 FPGA 學習之路 (七) UART串口設計

UART串口通信協議 UART使用的是 異步,串行通信。 串行通信是指利用一條傳輸線將資料一位位地順序傳送。特點是通信線路簡單,利用簡單的線纜就可實現通信,降低成本,適用於遠距離通信,但傳輸速度慢的應用場合。

原创 C語言--關於指針兩種初始化賦值操作的思考

首先,什麼叫做指針的初始化? int * p = NULL;在定義指針變量p的同時把p的值設置爲0x00000000;而不是把*p的值設置爲0x00000000。這個過程叫做初始化。 探討: int * p = & a; 和

原创 C語言--爲什麼char類型的範圍是 -128~+127

在C語言中, signed char 類型的範圍爲-128~127,每本教科書上也這麼寫,但是沒有哪一本書上(包括老師)也不會給你爲什麼是-128~127,這個問題貌似看起來也很簡單容易, 以至於不用去思考爲什麼,但是爲什麼最小負數絕對值

原创 C語言--關於int類型以及指針類型所佔字節大小的探討

1)int類型以及指針類型所佔字節的大小由什麼決定的? 首先,介紹幾個基本概念:(主要摘自百度百科)   機器字長:在同一時間中處理二進制數的位數叫字長。通常稱處理字長爲8位數據的CPU叫8位CPU,32位CPU就是在同一時間內處理字長爲

原创 《C語言深度解剖》--學習筆記

1、什麼是定義,什麼是聲明 什麼是定義?什麼是聲明?它們有何區別? 舉個例子: A)int i; B)extern int i;(關於extern,後面解釋) 什麼是定義:所謂的定義就是(編譯器)創建一個對象,爲這個對象分配一塊內

原创 markdown中實現首行縮進的兩種方法

https://blog.csdn.net/mountzf/article/details/51714763

原创 IIC通信協議

IIC 通信協議 I2C(IIC,Inter-Integrated Circuit),數據線SDA(data)和時鐘SCL(clock)構成的串行總線,雙向傳送。 高速IIC總線一般可達400kbps以上。 IIC是半雙工通信方式。 時序

原创 硬件面試(一)

1、請解釋電阻、電容、電感封裝的含義:0402、0603、0805。 表示的是尺寸參數。0402:40*20mil;0603:60*30mil;0805:80*50mil。 2、請問電阻、電容、電感的封裝大小分別與什麼參數有關? 電阻封裝

原创 C語言--typedef struct與struct定義結構體的區別

我在很多C語言代碼中看到很多定義結構體時使用typedef struct,而不適用struct,就瞭解了這樣做的原因: typedef是類型定義的意思。typedef struct 是爲了使用這個結構體方便。 具體區別在於: (1)若

原创 C語言--動態內存分配

1)什麼是動態內存分配、靜態內存分配。 百度百科中這樣定義 靜態內存分配:分配內存大小的是固定,比如定義一個數組,數組的大小是我們提前定義好的,一直到程序結束。 動態內存分配:動態內存分配(Dynamic Memory Allocatio

原创 如何提高FPGA敲代碼的速度?

此篇轉自http://dengkanwen.com/438.html