комментарии вернул в нормальный вид
This commit is contained in:
parent
76258c03d0
commit
a7ce96bf42
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* BL25CM1A.c
|
||||
*
|
||||
* Created on: 7 сент. 2023 г.
|
||||
* Created on: 7 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. 2023 <EFBFBD>.
|
||||
* Author: seklyuts
|
||||
*/
|
||||
#include "f28x_project.h"
|
||||
@ -159,16 +159,16 @@ void Bl25cm1a_read_data(uint32_t Addr, uint16_t quant8, uint16_t * read_data)
|
||||
if(quant8 > 8)
|
||||
{
|
||||
for(i = 0; i < (quant8-8); i += 8)
|
||||
{ //в этом цикле только полные посылки по 8 байт
|
||||
{ //в этом цикле только полные посылки по 8 байт
|
||||
Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, 8);
|
||||
copy8_to_16(addr_read_data, read_data, 4);
|
||||
read_data+=4;
|
||||
}
|
||||
}
|
||||
if(i < quant8)
|
||||
{ //тут м.б. от 1 до 8 байт
|
||||
Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, (quant8 - i)); //читаем оставшиеся байты
|
||||
if((quant8 - i) & 1) {addr_read_data[quant8] = 0; quant8++; } //если байт нечётное число, то дополняем до чётного нулём чтобы записать 16-битными словами в буфер
|
||||
{ //тут м.б. от 1 до 8 байт
|
||||
Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, (quant8 - i)); //читаем оставшиеся байты
|
||||
if((quant8 - i) & 1) {addr_read_data[quant8] = 0; quant8++; } //если байт нечётное число, то дополняем до чётного нулём чтобы записать 16-битными словами в буфер
|
||||
copy8_to_16(addr_read_data, read_data, (quant8 - i)/2);
|
||||
}
|
||||
}
|
||||
@ -184,14 +184,14 @@ uint16_t Bl25cm1a_verify_data(uint32_t Addr, uint16_t quant8, uint16_t * verify_
|
||||
if(quant8 > 8)
|
||||
{
|
||||
for(i = 0; i < (quant8-8); i += 8)
|
||||
{ //в этом цикле только полные посылки по 8 байт
|
||||
{ //в этом цикле только полные посылки по 8 байт
|
||||
copy16_to_8(verify_data, addr_vfy_data, 4);
|
||||
if(Bl25cm1a_verify_8_bytes(Addr+i, addr_vfy_data, 8)) return 1;
|
||||
verify_data+=4;
|
||||
}
|
||||
}
|
||||
if(i < quant8)
|
||||
{ //тут м.б. от 1 до 8 байт
|
||||
{ //тут м.б. от 1 до 8 байт
|
||||
quant16 = quant16bitWords(quant8-i);
|
||||
copy16_to_8(verify_data, addr_vfy_data, quant16);
|
||||
if(Bl25cm1a_verify_8_bytes(Addr+i, addr_vfy_data, (quant8 - i))) return 1;
|
||||
@ -208,14 +208,14 @@ void Bl25cm1a_write_1_page(uint32_t Addr, uint16_t quant8, uint16_t * write_data
|
||||
if(quant8 > 8)
|
||||
{
|
||||
for(i = 0; i < (quant8-8); i += 8)
|
||||
{ //в этом цикле только полные посылки по 8 байт
|
||||
{ //в этом цикле только полные посылки по 8 байт
|
||||
copy16_to_8(write_data, addr_write_data, 4);
|
||||
Bl25cm1a_write_8_bytes(Addr+i, addr_write_data, 8);
|
||||
write_data += 4;
|
||||
}
|
||||
}
|
||||
if(i < quant8)
|
||||
{ //тут м.б. от 1 до 8 байт
|
||||
{ //тут м.б. от 1 до 8 байт
|
||||
quant16 = quant16bitWords(quant8-i);
|
||||
copy16_to_8(write_data, addr_write_data, quant16);
|
||||
Bl25cm1a_write_8_bytes(Addr+i, addr_write_data, (quant8 - i));
|
||||
@ -227,16 +227,16 @@ void Bl25cm1a_write_data(uint32_t Addr_8bit, uint16_t quant_8bit, uint16_t * wri
|
||||
uint16_t * addr_write_data = write_data;
|
||||
uint16_t page_quant_8bit = 0;
|
||||
|
||||
while( (Addr_8bit&0xFF)+(quant_8bit) > BL25CM1A0_PAGE) //если данные выходят за границу текущей страницы
|
||||
while( (Addr_8bit&0xFF)+(quant_8bit) > BL25CM1A0_PAGE) //если данные выходят за границу текущей страницы
|
||||
{
|
||||
page_quant_8bit = BL25CM1A0_PAGE - (Addr_8bit&0xFF); //вычисляем кол-во байт данных до конца текущей страницы
|
||||
Bl25cm1a_write_1_page(Addr_8bit, page_quant_8bit, addr_write_data); //записываем эти данные на текущую страницу
|
||||
Addr_8bit += page_quant_8bit; //перелистываем страницу внешней памяти
|
||||
addr_write_data += page_quant_8bit/2; //шагаем на следующие незаписанные данные в буфере
|
||||
quant_8bit -= page_quant_8bit; //уменьшаем кол-во данных на величину которую уже записали
|
||||
page_quant_8bit = BL25CM1A0_PAGE - (Addr_8bit&0xFF); //вычисляем кол-во байт данных до конца текущей страницы
|
||||
Bl25cm1a_write_1_page(Addr_8bit, page_quant_8bit, addr_write_data); //записываем эти данные на текущую страницу
|
||||
Addr_8bit += page_quant_8bit; //перелистываем страницу внешней памяти
|
||||
addr_write_data += page_quant_8bit/2; //шагаем на следующие незаписанные данные в буфере
|
||||
quant_8bit -= page_quant_8bit; //уменьшаем кол-во данных на величину которую уже записали
|
||||
}
|
||||
if(quant_8bit > 0)
|
||||
{
|
||||
Bl25cm1a_write_1_page(Addr_8bit, quant_8bit, addr_write_data); //если данные для записи остались, то записываем их
|
||||
Bl25cm1a_write_1_page(Addr_8bit, quant_8bit, addr_write_data); //если данные для записи остались, то записываем их
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user