комментарии вернул в нормальный вид

This commit is contained in:
seklyuts 2024-09-04 10:30:19 +03:00
parent 76258c03d0
commit a7ce96bf42

View File

@ -1,7 +1,7 @@
/* /*
* BL25CM1A.c * BL25CM1A.c
* *
* Created on: 7 сент. 2023 г. * Created on: 7 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. 2023 <EFBFBD>.
* Author: seklyuts * Author: seklyuts
*/ */
#include "f28x_project.h" #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) if(quant8 > 8)
{ {
for(i = 0; i < (quant8-8); i += 8) for(i = 0; i < (quant8-8); i += 8)
{ //в этом цикле только полные посылки по 8 байт { //в этом цикле только полные посылки по 8 байт
Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, 8); Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, 8);
copy8_to_16(addr_read_data, read_data, 4); copy8_to_16(addr_read_data, read_data, 4);
read_data+=4; read_data+=4;
} }
} }
if(i < quant8) if(i < quant8)
{ //тут м.б. от 1 до 8 байт { //тут м.б. от 1 до 8 байт
Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, (quant8 - i)); //читаем оставшиеся байты Bl25cm1a_read_8_bytes(Addr+i, addr_read_data, (quant8 - i)); //читаем оставшиеся байты
if((quant8 - i) & 1) {addr_read_data[quant8] = 0; quant8++; } //если байт нечётное число, то дополняем до чётного нулём чтобы записать 16-битными словами в буфер if((quant8 - i) & 1) {addr_read_data[quant8] = 0; quant8++; } //если байт нечётное число, то дополняем до чётного нулём чтобы записать 16-битными словами в буфер
copy8_to_16(addr_read_data, read_data, (quant8 - i)/2); 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) if(quant8 > 8)
{ {
for(i = 0; i < (quant8-8); i += 8) for(i = 0; i < (quant8-8); i += 8)
{ //в этом цикле только полные посылки по 8 байт { //в этом цикле только полные посылки по 8 байт
copy16_to_8(verify_data, addr_vfy_data, 4); copy16_to_8(verify_data, addr_vfy_data, 4);
if(Bl25cm1a_verify_8_bytes(Addr+i, addr_vfy_data, 8)) return 1; if(Bl25cm1a_verify_8_bytes(Addr+i, addr_vfy_data, 8)) return 1;
verify_data+=4; verify_data+=4;
} }
} }
if(i < quant8) if(i < quant8)
{ //тут м.б. от 1 до 8 байт { //тут м.б. от 1 до 8 байт
quant16 = quant16bitWords(quant8-i); quant16 = quant16bitWords(quant8-i);
copy16_to_8(verify_data, addr_vfy_data, quant16); copy16_to_8(verify_data, addr_vfy_data, quant16);
if(Bl25cm1a_verify_8_bytes(Addr+i, addr_vfy_data, (quant8 - i))) return 1; 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) if(quant8 > 8)
{ {
for(i = 0; i < (quant8-8); i += 8) for(i = 0; i < (quant8-8); i += 8)
{ //в этом цикле только полные посылки по 8 байт { //в этом цикле только полные посылки по 8 байт
copy16_to_8(write_data, addr_write_data, 4); copy16_to_8(write_data, addr_write_data, 4);
Bl25cm1a_write_8_bytes(Addr+i, addr_write_data, 8); Bl25cm1a_write_8_bytes(Addr+i, addr_write_data, 8);
write_data += 4; write_data += 4;
} }
} }
if(i < quant8) if(i < quant8)
{ //тут м.б. от 1 до 8 байт { //тут м.б. от 1 до 8 байт
quant16 = quant16bitWords(quant8-i); quant16 = quant16bitWords(quant8-i);
copy16_to_8(write_data, addr_write_data, quant16); copy16_to_8(write_data, addr_write_data, quant16);
Bl25cm1a_write_8_bytes(Addr+i, addr_write_data, (quant8 - i)); 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 * addr_write_data = write_data;
uint16_t page_quant_8bit = 0; 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); //вычисляем кол-во байт данных до конца текущей страницы page_quant_8bit = BL25CM1A0_PAGE - (Addr_8bit&0xFF); //вычисляем кол-во байт данных до конца текущей страницы
Bl25cm1a_write_1_page(Addr_8bit, page_quant_8bit, addr_write_data); //записываем эти данные на текущую страницу Bl25cm1a_write_1_page(Addr_8bit, page_quant_8bit, addr_write_data); //записываем эти данные на текущую страницу
Addr_8bit += page_quant_8bit; //перелистываем страницу внешней памяти Addr_8bit += page_quant_8bit; //перелистываем страницу внешней памяти
addr_write_data += page_quant_8bit/2; //шагаем на следующие незаписанные данные в буфере addr_write_data += page_quant_8bit/2; //шагаем на следующие незаписанные данные в буфере
quant_8bit -= page_quant_8bit; //уменьшаем кол-во данных на величину которую уже записали quant_8bit -= page_quant_8bit; //уменьшаем кол-во данных на величину которую уже записали
} }
if(quant_8bit > 0) 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); //если данные для записи остались, то записываем их
} }
} }