vivado學習第二 串列埠通訊

2021-08-24 23:10:34 字數 849 閱讀 3200

奇偶校驗位

奇偶校驗位分為奇數校驗位和偶數校驗位,奇數和偶數的判斷標準是依據傳送一串或者一幀資料中「1」的個數。

奇數校驗:傳送的資料位+奇數校驗位中「1」的個數為奇數個,也就是說如果資料位的「1」的個數為奇數個,則奇數校驗位為數字0;如果資料位的「1」的個數為偶數個,則奇數校驗位為數字1。

偶數校驗:傳送的資料位+偶數校驗位中「1」的個數為偶數個,也就是說如果資料位的「1」的個數為奇數個,則奇數校驗位為數字1;如果資料位的「1」的個數為偶數個,則奇數校驗位為數字0。

關於拼接運算子

{}拼接運算子的使用方法:

}; //這等同於

}}; //這等同於

注意:在位拼接表示式中不允許存在沒有指明位數的訊號。

例如:};//這種寫法是錯誤的,因為沒有指定1的位數,計算機編譯器無法識別。正確寫寫法應該是};

{}拼接運算子和算術運算子一起使用:

例子一:

wire[mem_data_bits - 1:0] rd_burst_data; // 這裡定義了rd_burst_data為mem_data_bits這麼個的位數。

assign err = rd_burst_data_valid &(rd_burst_data != }); //mem_data_bits/8是位元組數, 然後用位接複製的方法,產生64位資料和rd_burst_data進行比較。

例子二:

output[mem_data_bits/8 - 1:0] local_be,

assign local_be = }; // local_be 實際為8·`b11111111的數

vivado學習第二 串列埠通訊

奇偶校驗位 奇偶校驗位分為奇數校驗位和偶數校驗位,奇數和偶數的判斷標準是依據傳送一串或者一幀資料中 1 的個數。奇數校驗 傳送的資料位 奇數校驗位中 1 的個數為奇數個,也就是說如果資料位的 1 的個數為奇數個,則奇數校驗位為數字0 如果資料位的 1 的個數為偶數個,則奇數校驗位為數字1。偶數校驗 ...

FPGA學習 9 串列埠通訊

處理器與外部裝置通訊的兩種方式 並行通訊和序列通訊 速度快但占用引腳多 並行 序列通訊的通訊方式 同步通訊和非同步通訊 同步帶時鐘線,非同步不帶時鐘,只能自覺遵從協議 序列通訊的傳輸方向 單工 資料只能沿著乙個方向傳輸 半雙工 資料兩個方向,但是需要分時 全雙工 資料可以同時進行雙向傳輸 常見的序列...

STM32 串列埠通訊學習

1 初始化gpio。2 中斷和串列埠1配置。3 寫串列埠中斷服務函式。4 寫主函式。不管是初始化gpio口還是定時器,串列埠等等,都需要先進行宣告。gpio inittypedef gpio initstructure usart inittypedef usart initstructure nv...