fix(fram): corregir writeBlock y publicar JW_FRAM 1.0.3#2
Draft
JW-Control wants to merge 6 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resumen
Actualiza
JW_FRAMa la versión1.0.3dentro del repositorio central JW-Libraries.La corrección fue detectada y validada en hardware durante la prueba integrada del JWPLC Basic con TFT, botonera, RTC, FRAM y Ethernet.
Problema detectado
writeBlock()almacenaba el encabezado y el payload mediante dos comandosWRITEindependientes, pero ejecutaba un soloWRENantes de ambos.En la FM25CL64B usada por el JWPLC Basic, el latch WEL se limpia al finalizar el primer comando
WRITE. Como consecuencia:readBlock()rechazaba el bloque por checksum inválido;ERROR VERIFICACION.Los métodos
put(),get()yupdate()no estaban afectados.Corrección
writeBlock()ahora escribe:WREN -> WRITE -> WRDI;Se conserva sin cambios:
BlockHeader;Archivos actualizados
libraries/JW_FRAM/src/JW_FRAM.hlibraries/JW_FRAM/library.propertieslibraries/JW_FRAM/CHANGELOG.mdlibraries/JW_FRAM/README.mdplatform-jwplc-sync.propertiesVersión
Validación realizada
Basic_RWconfirma lectura/escritura básica de la FRAM.writeBlock()yreadBlock()verificados en JWPLC Basic con FM25CL64B.GUARDADO OK.ERRapagado cuando no existen otras fallas.platform-jwplcmediante el PR #56.Revisión del flujo de sincronización
Se comprobó que
JW-Librariesya tiene dos workflows relevantes:sync-jw-fram.ymllibraries/JW_FRAM/library.propertiesenmain;JW-Control/JW_FRAM;v1.0.3si aún no existe.sync-platform-jwplc-libraries.ymlplatform-jwplc;La configuración de destino estaba desactualizada y todavía apuntaba a alpha31 y a
JWPLC/JWPLC-2.0.0/libraries. Se actualizó a:También se verificó que las versiones actuales de
JW_MatrixButtons,JW_RTCyJW_SDcoinciden entreJW-Librariesyplatform-jwplc, por lo que la sincronización no debería introducir una regresión de versiones.Estado
PR creado y mantenido como draft.
Mientras permanezca en draft y sin fusionar, no se ejecutan los workflows basados en
pushamain, no se publica el release y no se crea el PR automático de sincronización enplatform-jwplc.Al fusionarlo más adelante:
JW_FRAM;v1.0.3;