Андрей
Для начала попробуй и Z большой написать
Андрей
А так, смотри в сторону библиотеки
ВПК ПОТОК
ВПК ПОТОК
/*
* clock
*/
#define MCP_20MHz 1
#define MCP_16MHz 2
#define MCP_8MHz 3
#define MCP_20MHZ MCP_20MHz
#define MCP_16MHZ MCP_16MHz
#define MCP_8MHZ MCP_8MHz
Андрей
https://github.com/autowp/arduino-mcp2515
Андрей
В гитхабе
Андрей
MHZ
Андрей
ВПК ПОТОК
Есть еще такой кусок кода
ВПК ПОТОК
/*
* Begin mt
*/
#define TIMEOUTVALUE 50
#define MCP_SIDH 0
#define MCP_SIDL 1
#define MCP_EID8 2
#define MCP_EID0 3
#define MCP_TXB_EXIDE_M 0x08 /* In TXBnSIDL */
#define MCP_DLC_MASK 0x0F /* 4 LSBits */
#define MCP_RTR_MASK 0x40 /* (1<<6) Bit 6 */
#define MCP_RXB_RX_ANY 0x60
#define MCP_RXB_RX_EXT 0x40
#define MCP_RXB_RX_STD 0x20
#define MCP_RXB_RX_STDEXT 0x00
#define MCP_RXB_RX_MASK 0x60
#define MCP_RXB_BUKT_MASK (1<<2)
ВПК ПОТОК
ВПК ПОТОК
Вот пишет ошибку, что два числа должны быть интами
ВПК ПОТОК
INT8U begin(INT8U speedset, const INT8U clockset = MCP_16MHz); /* init can */
ВПК ПОТОК
Написано что 16 это константа
Андрей
А тебя ошибка
ВПК ПОТОК
может поменять в библиотеке константу на *
Андрей
С библиотеками
Андрей
Внизу
Андрей
Не смущает?
ВПК ПОТОК
Изменение в библиотеке не помогло
ВПК ПОТОК
ВПК ПОТОК
Давая скажи что не так, заработает, я тебе балланс телефона на 100 рублей пополню
Андрей
Ошибку прочитай
Андрей
Я думал
Андрей
Думаю*
Андрей
У тебя проблема из-за русского шрифта в пути к либрам
Андрей
Либру кстати как качал?
ВПК ПОТОК
просто зипом, и потом распоковал в папку с ардуино
ВПК ПОТОК
И все
ВПК ПОТОК
Вот сейчас я удалил три папки с библиотеками
ВПК ПОТОК
Сейчас удалил все, что так скачал. Добавил через экспорт ту по ссылке выше
ВПК ПОТОК
Изменил строку mcp2515.setBitrate(CAN_125KBPS,MCP_8MHZ); и не работает
ВПК ПОТОК
ВПК ПОТОК
ВПК ПОТОК
все провода прозвонил
Семён
где-то ошибка
Nook
Nook
А кто еще на линии весит?
ВПК ПОТОК
А на линии висит приемник в режиме прослушки
ВПК ПОТОК
Там готовый прибор у которого не может быть проблем, слишком дорогой сканер)))
ВПК ПОТОК
MCP2515 mcp2515(10); у меня идея, может вот этот контакт для уно, а у меня нано
ВПК ПОТОК
может вот его поменять?
ВПК ПОТОК
ВПК ПОТОК
Может 10 на 2 сменить?
ВПК ПОТОК
ВПК ПОТОК
загружается то без ошибок и ответ то валиться
ВПК ПОТОК
или может не хватает строки типо
pinMode(2,INPUT):
ВПК ПОТОК
Вроде там для работы по SPI нужно контакт того прибора который используешь притягивать к земле, вроде такой командой можно это сделать
ВПК ПОТОК
Хотя, вроде должно быть так
pinMode(2,OUTPUT);
digitalWrite(2,LOW);
ВПК ПОТОК
#include <SPI.h>
#include <mcp2515.h>
struct can_frame canMsg1;
struct can_frame canMsg2;
MCP2515 mcp2515(10);
void setup() {
canMsg1.can_id = 0x0F6;
canMsg1.can_dlc = 8;
canMsg1.data[0] = 0x8E;
canMsg1.data[1] = 0x87;
canMsg1.data[2] = 0x32;
canMsg1.data[3] = 0xFA;
canMsg1.data[4] = 0x26;
canMsg1.data[5] = 0x8E;
canMsg1.data[6] = 0xBE;
canMsg1.data[7] = 0x86;
canMsg2.can_id = 0x036;
canMsg2.can_dlc = 8;
canMsg2.data[0] = 0x0E;
canMsg2.data[1] = 0x00;
canMsg2.data[2] = 0x00;
canMsg2.data[3] = 0x08;
canMsg2.data[4] = 0x01;
canMsg2.data[5] = 0x00;
canMsg2.data[6] = 0x00;
canMsg2.data[7] = 0xA0;
while (!Serial);
Serial.begin(115200);
mcp2515.reset();
mcp2515.setBitrate(CAN_125KBPS,MCP_8MHZ);
mcp2515.setNormalMode();
Serial.println("Example: Write to CAN");
}
void loop() {
mcp2515.sendMessage(&canMsg1);
mcp2515.sendMessage(&canMsg2);
Serial.println("Messages sent");
delay(100);
}
ВПК ПОТОК
Код простой, но мне кажется не работает, что именно на уровне железа.
Indr1x
ВПК ПОТОК
Я что сделал подключил как на схеме и все заработало
ВПК ПОТОК
ВПК ПОТОК
ВПК ПОТОК
значит сигнал уходит
ВПК ПОТОК
Значит проблема у приемника
ВПК ПОТОК
сейчасзаменю его
ВПК ПОТОК
НЕ ПОВЕРИТЕ НО ВСЕ ЗАРАБОТАЛО! По ибка была в том, что у терминала не стояла галочка главный и он не отвечал на пакеты не начиная передачу ну или как то я получил ответ от тех поддержки.
ㅤ
а CAN сигнал откуда берете?
Dim
скажите на сколько шустро будет исполнятся AES128 на вашей железке?
ВПК ПОТОК
а CAN сигнал откуда берете?
А так сделал между собой 2 ардуинки, сейчас хочу собрать максимально число плат, у меня их 4 и погонять их в работе сразу 4
romanetz
Dim
и почем такая железка на платке?
romanetz
3 бакса
romanetz
как было подмечено - с дырявым-таки шифрованием
romanetz
и слегка похуистичным отношением вендора к сему факту )
romanetz
а это про другое, side-channel attack
romanetz
когда сдувают конденсаторы блокирующие и по питанию намеренно просадки делают
romanetz
чтобы логика шифрования засбоила
romanetz
точнее, даже не само шифрование, а программная обвязка вокруг него
romanetz
проц засбоил, который данные в него пуляет
romanetz
ну ещё глитчи (внезапные резкие всплески, меньше, чем нормальный период) по тактовой частоте
ㅤ
romanetz
Andy
когда сдувают конденсаторы блокирующие и по питанию намеренно просадки делают
Так как раз про фьюзы, в новых чипах закрытый ключ уже не хранится:
ESP32v3
Recently we launched an updated version of the ESP32, ESP32v3, that includes additional enhancements to the secure boot workflow that is described above. Specifically, the changes include:
The ESP32v3 uses PKI-based (RSA) verification instead of the AES-based verification that is documented above. In the RSA based verification, only the public key is stored on the ESP32, for signature verification, and the private key can be stored safely offline. This makes it harder to create a maliciously signed bootloader as long as the RSA private key is safe.
The eFUSE contains a hash of the RSA public key, while the RSA public key itself is stored in the flash.